IRA Planner: A Financial Planning Tool For Radio Shack Color Computer, Atari, Apple, PET/CBM, VIC, And OSI
COMPUIG
The Journal For Progressive Computing
$2.50
July
1982
Issue 26
Vol. 4 No. 7
63379 £1.85 in UK
Gold Rush
Action Game For
Atari And VIC
Atari Video
Graphics: An
In-depth Tutorial
An Apple DOS
Changer:
Protect Your Disks
From Accidental
Erasure
Super QuadraPET
Independently
Partitioning
PET/CBM Memory
Whither VIC:
An Overview
OtThe
VIC-20 Computer
Il74470l'63379'
0 7
Reviews: Caverns of Mars
for Atari, Two VIC-20 Games,
Softbox-CP/M for
PET/CBM, and more
Introducins the PERCOM
Alternative to ATARI Disk Storage
Your Atari 800 is the finest home computer on
the market. Now you can own a floppy disk
system that measures up — an RFD mini-disk
storage system irom Percom.
At Percom we've been making disk
storage systems since 1 977.
Our designs are proven, our quality is
well known. And we back our dealers with
service know-how. Expect more from Percom.
You won't be disappointed.
• Operate in either single- or double-density
storage mode using Atari DOS 2.0S. In
double-density you can store almost 184
Kbytes (lormalted) on one side of a 40-
track diskette.
Connect your Percom RFD first-drive
system directly to your computer or connect
into your system ttirough your Atari 810
Disk Drive.
Add an RFD first-drive system with its
versatile four-drive controller, then connect
as many as three more low-cost RFD add-
on drives.
Write application programs that can query
and set up your system to operate a differ-
ent type drive at each cable position ~ that
can even change configuration as the
program executes.
• Get quality and state-of-the-art capability at
competitive prices. Percom first-drive RFD
systems are priced from only $799, add-on
drives from only $399.
Watch for announcement of a new, power-
ful, easy-to-use disk-operating system for
your Percom-equipped Atari 800 computer.
tvltnimum system requirements — are an Atari 800
computer witti 24-Kt)y!es of RAM and compatible
video display system: Atari's disk-operating system
(ver 2.0S) and owner's manual: and. (or add-on
drives {il used) an optional disk drives
interconnecting cattle availatjie from Percom.
For the best thing next to your computer, see your Atari dealer
about a Percom RFD floppy disk storage system. For the name
of your nearest dealer, call Percom toll-free 1-800-527-1222.
PRICES AND SPECIFICATIONS
SUBJECT TO CHANGE
V/ITHOUT NOTICE.
f Yes ... I'd like to know more about Percom HFD disk
drives (or my Atari 800 Computer. Rush me Iree literature.
Send to: PERCOIUI DATA COMPANY. Inc. Dept 18-COI
1T2?0 Pagenniil Road. Dallas, Texas 75243
PERCOM DATA COMPANY. itSIC.
HaSOPAGEMILL BO -DALLAS TX 75243 - I21<1! 340-7081
ATARI 800 & ATARI 810 are trademarks of ttie Atari Corporation.
PERCOfiil is a trademark of Percom Data Company, Inc.
name
street
cily
state
zip phone number
1 plan to add a hard disk system lo my Atari
MAIL TODAY!
I Bli ■■ ^m warn ■■ ■■■ an ^m ^m
"~i yes n no.
IF YOU'RE WAITING FOR THE
PRICE OF WORD PROCESSORS
TO FALL WITHIN REASON.
nttJi
Everyone expected it would happen
sooner or later. . .witti ■■. i iPr ^^ i i •
it already hias! Now all the marvelous
benefits of expensive and advanced
word processing systems are available
on Commodore computers, America's
largest selling computer line. WordPro
PLUS, when combined with the new 80
column CBM 8032, creates a word pro-
cessing system comparable to virtually
any other top quality word processor
available— but at savings of thousands
of dollars!
{
New. low cost computer technology is
now available at a fraction of what you
would expect to pay. This technology
allowed Commodore to introduce the
new and revolutionary CBfvl 8032
Computer.
WordPro PLUS turns this new CBM
8032 Computer into a sophisticated,
time saving word processing tool. With
WordPro PLUS, documents are dis-
played on the computer's screen. Edit-
ing and last minute revisions are simple
and easy. No more lengthy re-typing
sessions. Letters and documents are
easily re-called from memory storage
for editing or printing with final drafts
printed perfectly at over five hundred
words per minute!
Our nationwide team of professional
dealers will show you how your office
will benefit by using WordPro PLUS. At
a price far less than you realize.
Invest in your office's future. . .
invest in WordPro PLUS. . .
Call us today for the name of the
WordPro PLUS dealer nearest you.
Professional Software Inc.
51 Fremont Street
Needham, MA 021 94
(617)444-5224
TELEX: 95 1 579
TM WordPro is a Reglslaretf Trademark of Professional Software, Inc. WordPro was wriiten by Stave Punier.
All spacillcatlons subject lo change iwftiout notice.
Foi the Commodore 8000
Now there is an interactive
General Accounting System
designed especiaiiy for the
first time user. The user is led
through each function by
highlighted prompts explain-
ing the required input at each
point. And all input requests
are prompted with complete
verification. Plus, a step-by-
step instruction manual
guides the user through the
General Ledger
Cash Disbursements and
Cash Receipts Journal as wel
as a General Journal. Main-
tains account balances for
Present Month, Quarter to
Date and Year to Date.
Accepts postings from
program. The user prompts
and the detailed manual
make it virtually impossible
for the first time user to get
lost or to accidentally crash.
Accounts Receivable,
Accounts Payable, Payroll
and other programs. Also
provides user customized
financial statements. CJp to
1000 accounts and up to
99 departments.
'■^•sfK;.:- . .„ u..
sm^^
:--^^^^^
Series Computer System
Accounts Receivable
Invoices and Monthly State-
ments as well as Credit and
Debit Memos. Accomodates
full or partial payments. User
sets finance charge rate and
period. User also sets invoice
aging reports and aging
breaks. Invoices may be dis-
tributed among nine different
General Ledger accounts with
Accounts Payable
Accounts Payable checks
with full voucher detail.
Detailed check register. Auto-
matic application of Credit
Memos. User sets invoice
aging reports and aging
breaks. Invoices may be dis-
Payroll
Payroll checks with full
deductions and pay detail.
Pays regular, overtime,
holiday and piece work hours.
Accommodates Weekly,
Bi-Weekly, Semi-Monthly and
Monthly employees. Op to
eight miscellaneous deduc-
tions or payments per
automatic updating to the
General Ledger. During
invoice data entry the invoice
is displayed on the screeri
and typed exactly as if in a
typewriter. File capacity
allows 1800 customers and
invoices. Five hundred
customers allows room for
1300 invoices.
tributed among nine different
General Ledger accounts with
automatic updating to the
General Ledger. File capacity
allows 2500 vendors and
invoices.
employee. Prints Payroll
Journal, Payroll Check
Register and an Absentee
Report as well as 941 infor-
mation and W2 forms. Main-
tains Monthly, Quarterly and
Yearly totals for up to 350
employees. Automatic
General Ledger updating.
See your nearest
Commodore dealer for
a demonstration.
CMS Soft:v\/are Systems
2204 Camp David Mesquite, TX. 75149 214 285-3581
Memory — you never seem to have quite
enough of it.
But if you're one of the thousands of Apple
owners using the SoftCard, there's an economical
new way to expand your memory dramatically.
16K ON A PLUG-IN CARD.
Microsoft's new RAMCard simply **
plugs into your Apple II,* and adds 16k
bytes of dependable, buffered
read/write storage.
Together with the SoftCard, ^
the RAMCard gives you a 56k
CP/M® system that's big enough
to take on all kinds of chores that
would never fit before (until now,
the only way to get this much
memory was to have an Apple
Language Card installed). '^
GRiAT SOFTWARE:
YOURS, OURS,OR THEIRS. ^
With the RAMCard and i^
SoftCard, you can tackle large-
scale business and scientific
computing with our COBOL and |
FORTRAN languages. Or greatly -'^
increase the capability of CP/M •;
applications like the Peachtree Software account-
ing systems. VisiGalc™ and other Apple software
packages can take advantage of RAMCard too.
And RAMCard gives you the extra capacity to
develop advanced programs of your own, using the
SoftCard and CP/M. Even with the RAMCard in
place, you can still access your ROM BASIC
and monitor routines.
JOIN THE SOFTCARD
FAMILY.
The RAMCard is just the
latest addition to the SoftCard
family — a comprehensive sys-
tem of hardware and software
that can make your Apple more
versatile and powerful than you
ever imagined.
Your Microsoft dealer has all
the exciting details. Visit him
soon, and discover a great idea
that keeps getting better.
I Microsoft Consumer
I Products, 400 108th Ave. N.E.,
- ' Suite 200, Bellevue, WA 98004.
_4 (206)454-1315.
. _ . .1
■ I 1 *
^IIQn09DrT
July, 1982, Issue 26
COMPUTE!
Table of Contents
July, 1982 Vol.4, No. 7
Features
Gold Rush! Joseph Weber,
IRA Planner Richard and Betty Givan,
Maze Race Mike Peterson,
Test RAM For Bad Bits, Nondestructively Leo j. Scan Ion.
Education And Recreation
Recursive BASIC Subroutines Earl Wuchter,
Screen Graphics lanPaull,
Answer Selection With Joysticks Stephen Levy,
Apple Gome Paddles John K. Elberfeld,
Computing Techniques For The Handicapped George Leotti,
Multidigit Addition Zolton Szepesi,
Reviews
Caverns Of Mars Charles Brannon,
Two Programs From TtieVlC Six Pack Harvey Herman,
SoftBox: CP/M For PET/CBM Richard Mansfield,
SYSRES For PET/CBM Charles Brannon, 186
Fun With Microcomputers And BASIC Fred D'Ignazio, 187
,'v~ ■"■ ■ • -^nd Departments
The Editor's Notes Robert Lock
Ask The Readers Robert Lock, Richard Mansfield, and Readers,
Computers And Society David Thornburg,
The Beginner's Page: Making Files Work Richard Mansfield,
Friends Of The Turtle David Thornburg,
The World Inside The Computer Fred D'Ignazio,
Leorning With Computers Glenn Kieiman,
Telecommunications: Choosing A Modem Michael Day, 122
Machine Language: First Steps Jim Butterfield, 150
Insight: Atari Bill Wilkinson, 165
The Journal
A Direct Access File Editor Charles Brannon, 97
MicroDOS Dennis Keathley, 106
Whither VIC Jim Buttertieid, 112
Super QuadroPET David Sale, 116
Apple DOS Changer Robert Swirsky, 121
Atari Video Graphics And The Nevi^GTIA Craig Chamberlain, 124
All About PET/CBM Character Sets Louis F. Sander, 130
Language Lob Steve Steinberg! 142
VIC Super Expander Memory Map Chuon Chee, 144
Atari Variable Table Refresh And Program Backup Jon Harding, 151
Hovi/ To Use The 6560 Video Interface Chip Date Gilbert, 154
Machine Longuage Compactor David L. Evans. 159
The FORTH Page: Headless Metacompilation Richard Mansfield, 174
Resource Part 1: Mapping Machine Language Code I R. Berger, 175
COMPUTERS Listing Conventions iS8
191
CAPUTE!: Modifications Or Corrections To Previous Articles 190
Advertisers Index 208
Guide To Articles
And Programs
Computer
Multiple
Specific
Computers
27
*
34
•
40
«
46
<•
58
#
68
*
84
V/AT
92
AP
94
•
96
PA/
183
AT
184
V
185
P
186
P
187
«
6
12
18
22
64
76
88
AT
P/AT
AT
V
P
AP
AT
P
AT
V
AT
AP = Apple, AT = Atari, P = PET/CBM, V = VlC-20, 0 = OSI, C = Radio Shiack Color Computer, ' = All or several Of the above.
COMPUTE! The Journal for Progressive Computing (USPS: 537250) i.s jniliiisliccl I'i times
each vciiV by .Sitiall Sy.slcm Servkx-s. Inc., I'.O. Bon ,i'K16, Greensboro, NC: 27-UK USA. Phone:
(919)27.')-<)<S(I9. LditoiialOfliccsaie lociUfcl M 1)2.t Kulton Street. Ciieeirshoio, \t: 'i7-4ll3.
Doniesiif .Stibst rijjtions: 12 is.sncs, S2().<H1 Send siibsiri|>tion orders on l>;iiine or:Kidres,s
(I'.O. loiiii ;i37'.l) to C;itxul.itioii De])i.. COMPUTE! MaKii/ine. 51.") .XblKut l)ii\e, ISroniiiall. PA
l<)()(lfi. .Second ci.-i.ss ixisiage [)aid at Cieeiisboru, \C. 27-103 and aiidilion:il in;jiljiij> oKiees.
Kntirei-()niem,s copvrighl © HtS2 bv .Sni;ill .Svsleni Services. Inc. .Ml Ri'dils reserved
ISSN' 0194-3.^7X. '
TOLL FREE
Subscription
Order Line
800-345-8112
lnPAM0-M2-2444
coMPura
COMPUTfi
July, 1982, Issue 26
' A Brief Overview
Of The Chicago Consumer Electronics Show
And Notional Computer Conference In Houston
Robert Lock, Publisher/Editor and Tom Halfhill, Features Editor
I don't know why they ended up holding these two significant shows on overlapping days, but it made
for some extremely hectic traveling. 1 otn Halfliill, our new Features Editor, will describe the shows and
new products in much more detail next issue (both shows are still in progress), but we thought you'd
enjoy a tantalizing preview.
Commodore's Third Generation
In this partial list
oti
eatures vou
'11 be able to discern the impact c
f the Commodore introductions. Tom
will fill in the blanks
next month
BX256
B128
"P" Series
64
MAX
Integral
Monitor
80X25
80X25
40X25
40X25
40X25
Green E
'hosphor
External color (not included)
Dual Disks
yes
yes
optional
optional
optional
cassette
Standard
RAM
256K
I28K
128K
64K
unknown
Colors
N/A
N/A
16
16
unknown
Graphics
Resolution
N/A
N/A
320X200
320X200
unknown
CP/M
Compatible
yes
optional
optional
optional
N/A
Interfaces:
IEEE-488
yes
yes
yes
accepts
VIC peripherals
CBM peripherals
optional
N/A
RS-232
Yes
Yes
Yes
unknown
N/A
Standard
Language
BASIC 4.
Q BASIC 4.0
BASIC 4.0
A BASIC
Version
Described
As Compatible
In Most Ways
With 4.0
BASIC
Cartridge
Available
Planned Retail:
$2995
$1695
$995
$595
$179.95
Scheduled
Release:
fall
fall
fall
July/August
I
t ^■'mt- ss^ ' '?:4S-^fes*^^£^- --"
^■m
??l«r^->
_^2
^Diskette
MORE THAN EVER, ATARI HOME COMPUTERS
ARE SPEAKING YOUR LANGUAGE.
With more program languages than ever to choose
from, you now nave more opportunities than ever to
utilize the amazing capabilities of the ATARI 800™
Home Computer.
Whether youVe a beginning programmer, or at the
forefront of the art, you'll find an ATARI program
language that can make your task quicker and simpler
than ever before. Just look at what ATARI has to offer:
ATARI Microsoft BASIC— Now we offer the industry
standard, most powerful Microsoft BASIC yet. With
simple commands, it allows you to take advantage
of unique ATARI hardware features such as our well-
known player/missile graphics. For ease of program-
ming, it includes n-dimensional arrays for numerics
and string handling. And importantly, conversion
procedures are simple.
ATARI Macro Assembler™— Faster and more power-
ful than any ATARI language before, the ATARI
Macro Assembler also allows you to access more
memory space. And it s excellent for I/O interface
and manipulation of such features as: player/missile
graphics, sound registers and peripherals. In
addition, the macro processor and "include" file
library features speed-up program development
considerably
Fig-FORTH— For specialized programming needs,
such as educational or game applications ATARI Fig-
FORTH is uniquely effective. Fig-FORTH combines
power and simplicity in an efficient lOK size, with
characteristics of an interpreter and the speed of
machine language code.
ATARI BASIC- An affordable and easy to use
BASIC that uses only 8K of memory. It allows you to
take advantage of the spectacular ATARI graphics
and sound capabilities. And its immediate mode
error messages gready simplify debugging.
ATARI Assembler Editor— An excellent tool to assist
the assembler-programmer in creating, editing and
debugging assembly programs.
PILOT— PILOT is an exceptional learning language,
with built-in "turde" graphics to let you create spec-
tacular designs and pictures with very short programs.
Simple one or two-letter commands can allow you
to create a dialogue with the computer. And a single
"match" command can perform complex text
evaluation and pattern-matching instantly
ATARI is constantly developing new ways to help
you get more out of your ATARI 800 Home Computer,
bo watch for more innovative and exciting program
languages from ATARI in the future.
In addition to bringing the computer age
home, ATARI is committed to answering
the needs of computer professionals. AT A ni '
g jjiugiaiii
A
iDW«2AIARI,iiK
All Riijhcs &mtvlJ
•Av.iiliiHc htm tlw ATARI I'n.ur^im EsckiiiB^-
ATARI HOME COMPUTERS
We've Brought The Computer Age Home™
!
COMPUTE!
July. 1982. Issue 26
aaaaBBBDRiiDaaDBo a
BBDaDBaoBBaaBBa o
QQBBBaaDBBBBBa
BBBBBBBBBRBBB B
Commodore "MAX" \fachine
Third Generation
Commodore "B" Series
Microcom pu ter
mm:
Third Generation
Commodore PI 28 Series Microcomputer
Other New Computers: Sinclair Introduces A Color Computer
The Sinclair Spwtrun) was introduced in tlie US at (he (^ES. It's ronglily the satne size as the ZX-81,
but includes a partial stroke keyboard rather than the familiar membrane keyboard. The unit features
extended Sinclair BASIC, 16 colors, I6K RAjM standard, and a suggested retail in the S20() price range.
More next issue.
Ep.son, the well-known printer manufacturer, introduced a 16K portable computer with a suggested
relail of .fl7*)r). The compiucr is truly portable, deriving power from four NiCad baltcrics. Built-in
(standard) features include a LCD {Liquid Crystal Display) screen with '20 character liv four line display,
and a 24 column dot matrix
printer. The entire iniit measures
roughly I 1 inches by 8.."i incites
by 2 inches, and weighs 3 pounds,
13 ounces. The unit also features a
built-in RS-232C communications
port with full/half duplex selection
and II0to4S()()baudrate. A
standard microcassette unit is
optional. ■
Ottier Random Bits In The "More
Later" Category...
Atari, Apple and Commodore
were showing off new software.
Atari announced a price reduction
on the 400's suggested list to $349.95.
Microsoft reports increased and
substantial support for MS-DOS.
TIM EX was actively promoting the
$99.00 TIMEX/Sinclair computer.
EPSON
I
CTRL^I Initialize
1 MOniTOR
2 BftSIC
St m m m
1 I — =1 1 ;
- ¥ E^ R 1 1. H £ ^ 1l li '^ "i^
St A i. i £ v T 7 "Z I: T 1 "
Epson HX-20
I
Professional Software Introduces
POWER
by Brad Templeton
ADD POWER.TO YOUR e69.«^
COMMODORE COMPUIER
POWER produces a dramatic improvement in the
ease of editing BASIC on Commodore's computers.
POWER is a programmer's utility package (in a 4K
ROM) that contains a series of new commands and
utilities which are added to the Screen Editor and the
BASIC Interpreter. Designed for the CBM BASIC
user, POWER contains special editing, programming,
and software debugging tools not found in any other
microcomputer BASIC. POWER is easy to use and is
sold complete with a full operator's manual written by
Jim Butterfield.
POWER'S special keyboard 'instant action' features
and additional commands make up for, and go beyond
the limitations of CBM BASIC. The added features
include auto line numbering, tracing, single stepping
through programs, line renumbering, and definition
of keys as BASIC keywords. POWER even includes
TM POWER is a PegislefKl Tradematk ol Professional Software. Jnc.
All specidcaiions subject to change witliout notice.
new "stick-on" keycap labels. The cursor movement
keys are enhanced by the addition of auto-repeat and
text searching functions are added to help ease pro-
gram modification. Cursor UP and cursor DOWN
produce previous and next lines of source code.
COMPLETE BASIC program listings in memory can
be displayed on the screen and scrolled in either direc-
tion. POWER is a must for every serious CBM user.
Call us today, for the name of the Professional
Software dealer nearest you.
Professional Software Inc.
51 Fremont Street
Needham, MA02194
Tel: (617) 444-5224 Telex #951579
10
COMPUTE!
July. 1982, Issue 26
Staff Of COMPUTE!
Robert C. LocK Publisher/Editor
Kathleen Martinek, Managing Editor
Richard Mansfield, Assistant Editor
Tom R, Halfhill, Features Editor
Alice S. Wolfe, Publisher's Assistant
Georgia Papodopoulos, Art Director/
Production Manager
Harry Blair. Advertising Sales Monager
Terry Cosh. Typesetling/Productiori Assistant
De Potter. Production Assistant
Dai Rees. Production Assistant
Kate Taylor. Production Assistant
Charles Bran no n. Editorial Assistant
Vicki Jennings. Administrative Assistont
Sonja Whilesell, Dealer Coordinator
Bonnie Valentino, Accounting Coordinator
Fran Lyons. Circulation Coordinator
Christine Gordon. Customer Service
Associate Editors
Jim Butterfield. Toronto, Conoda
Harvey Herman, Greensboro, NC
Fred D'Ignozio c/o COMPUTE!
P.O. Box 5406, Greensboro, NC 27403
David Thornburg. P.O. Box 1317
Los Altos, CA 94022
I
Contributing Editors
Marvin DeJong. DepL of Mathematics-Physics
The School of the Ozarks
Pt. Lookout, MO 65726
Bill Wilkinson. Optimized Systems Software
10379-C Lonsdale, Ave.
Cupertino, CA 95014 jk
Gene Zumchak. 1700 Ntagaro Sf. "
Buffalo, NY 14207
Subscription Information
COMPUTEl Circulation Dept.
515 Abbott Drive
Broomall, PA 19008 USA
TOLL FREE
Subscription
Order Line
800-345-8112
In PA BOO-662-2444
COMPUTE! Subscription Rotes
(12 Issue Year):
US
Canada and
Foreign Surface Mail
(one yr.) $20
(two yrs.) $36
(three yrs.) $54
Air
Europe, US Possessions
Middle East, Centre I
America and North Africa
South Annerica, South
Africa, For East and
Australia
$25
$38
$48
$88
Advertising Sales
/(\>
The Gittelnnan
O <Y AIDolton
£^^617-451-0822
The Gittelman
Companyvi/
i Andy Meehan
>.,216-646 5700
.■>JY Metro 212 6o?A717
in British Columbia.
Canada call '108-35d-5653.
Elsewhere in Canada or outide
North America coll 019-275-<?eO'?.
In Alaska or Hawaii call 408-354-5553.
Phoebe Thompson
and Associates
101 Church Street. Suite 13
Los Gates, CA 95030
PHOEBE THOMPSON
Phoebe Thompson
gnd Associates
P.O. Box 7000-462
Redondo Beach, CA 90277
JOANN SULLIVAN
Small System Services, Inc.
publishes:
COMPUTE!
COMPUTE! Books
Corporate office:
625 Fulton Street.
Greensboro, NC 27403 USA
Mailing address: COMPUTE!
Post Office Box 5406
Greensboro, NC 27403 USA
Telephone: 919-275-9809
Robert C. Lock, President
W, Jerry Day, Vice-President,
Comptroller
Kathleen Martinek, Assistant To The
President
Etien Day, Accounting Manager
Carol Holmquist Lock, Research
Assistant
The Gittelman Company The Gittelman Company
Statler Office Building
Suite 518
20 Providence Street
Boston. MA 02116
AL DALTON
Summit Office Center
7266 Summit Avenue
Fort Washington, PA 19034
ANDY MEEHAN
6B & Associates COM PUTE !
P.O Box 335 Home Office
Libertyville, IL 60048 625 Fulton Street
GORDON BENSON Greensboro, NC 27403
HARRY BLAIR
Address all advertising materials to:
Alice S.Wolfe
Advertising Production Coordinator
COMPUTE! Magazine
625 Fulton Street
Greensboro, NC 27403 USA
T
Authors of ma nuscripts warrant that a 1 1 materials
submitted to COMPUTE! are original moteriols
with futi ownership rights resident in said authors.
By submitting articles to COtVlPUTEi. authors
acl<nowledge Ihotsuch materials, upon oc
ceptance for publication, tDecome the exclusive
pfopertv ot Smoll System Services. Inc. No
portion of this magazine may be reproduced in
any form without written permission from the
publisher. Entire contents copyright t 1982.
Small System Services, Inc. Rights to programs
developed ond submitted by oufhors are
explained in our author controct. Unsolicited
moteriQis not accepted tor publication in
COIvlPUTEf will be returned if outhor provides o
seiif-addressed. stamped envelope. Program
listings stiould be provided in printed torm (new
ribbon) as well as machine readable form.
Articles stiould be furnished OS typed copy
[upper and lower case, please) with Ooubl©
spacing Each poge of your article should beor
ttie title of the article, dote and name of
the author COMPUTE! assumes no liability for
errors in articles Or advertisements. Opinions
expressed by authors are not necessarily those
ot COf^PUTE!
PET IS a trademark of Commodore Business
Mochines. Inc
Apple is a trademark of Apple Computer
Company
ATAf?l is a trademark of Atori. Inc.
Coming In The August
Issue Of COMPUTE!
Keyprint Compendium:
PET/CBM
A Color Computer
Energy Monitor
Electric Eraser For
Tlie VIC
Video Graptiics And The
GTIA: Atari, Part 11
An Apple Data Manager
A Color Computer
Energy Monitor
JINSAM
Officially approved by Commodore
For Their 8000-9000 Series Desk-Top Computi.
1
i
space
age
micro
Used at NASA,
Kennedy Space Center
With Multiple Applications Related
to the;J^lumbia Space Shuttle Project
indudihgf/escue operations
r.f^t;qtiro| reports, inventory and
■^ uacking.
software
Jinsam8.2 f(^,
has brol<en the sort limit. Sorts are now
unlimited - you may sort to any desired
depth: 3,4,5,6,7 ....
We now have:
Unlimited record length, unlimited fields,
and unlimited sorts, searching by key
quick-scan and pattern matching, allow-
ing limitless applications.
JINI MICRO-SYSTEMS, Inc
DATABASE MANAGEMENT SYSTEM DESIGN
Box 274 KINGSBRIDGE STN.
RiVERDALE, N.Y.I 0463
(212)796-6200
12
I
COMPUTE)
July. 1982. fssue 26
Ask The
Readers
.Robert Lock Richord Mansfield,
And Readers
i
COMPUTE! ivelcomes questions, comments, or solutio-m to
issues raised in this column. Write to: Ask The Readers,
COMPUTE! Magazine, P.O. Box 5406, Greensboro, NC
27403. COMPUTE! reserves, the right to edit or abridge
published letters.
A Bigger Set Of Commands
I keep reading about this new POKE, and that new
POKE, to do all sorts of wonderful things. But it
seems cumbersome to me. As micros evolve, might
not some scheme evolve so these memory addresses
do not need to be memorized?
In other words, a much larger command set.
The new commands are directly translated inter-
nally to the proper POKE, so it wouldn't require
that much more memory. And it would be both
easier to remember and more transportable.
What do your readers think? Perhaps some of
them already have done such a program!
Kevin Sinclair
Language designers face a tough decision: they miLsl
balance convenience (many conumuuis) versus the amount
a/ROM or RAM granted toihem (such as 8K BASIC).
Fortunately, many languages can be extended,
permitting you to add extra, custom commands. Ij your
language is "soft-loaded, " coming off disk or tape into
RAM, you can usually "patch into" (modify) the language
to force it to recognize your new commands. However, the
new commands will generally have to be written in machine
language and reside in RAM somewhere.
ROM-based languages are more difficult to alter.
Most Microsoft B ASICs (Apple, OSI, Commodore) put a
fragment of the language into RAM dtiring their .start-up
secjuences when you turn power on. You can put a machine
language "J MP" command (a 'wedge") in the midst of
this fragment which causes the computer to regularly
"jump" to a machine language routine of your own which
would check to .see if you Imd typed "SPECIAL" or what-
ever instead of a normal BASIC word.
The "Universal Wedge" for disk commands, Basic
Aid, and other BASIC enhancement programs use this
method. Non-Microsoft B ASICs, .such as Atari 8K
BASIC, can also be made to recognize new commands,
but it is a tricky biusiness. Watch upcoming issues of
COMPUTE! /or an Atari Wedge routine.
For further information about adding "Wedges," see
Bill Wilkinson's "Insight: Ataii" column (COMPUTE!,
May, 1982 #24), "Modifying Apple's Floating Point
BASIC" (COMPUTE!., May, 1982, #24) and, for Micro-
soft BASIC in gCJieral, "The Wonderful Wedge"
(COMPUTE!, April, 1981, #11).
Atari Loclojp Revisited
Several readers have responded to the issue raised by Greg
Kopp in A.sk the Readers, May, 1 982, about the occasional
"lockup" where the Atari will, mysteriously, "go aivay"
and no longer respond to the keyboard.
Bill Wilkinson, COMPUTE! columnist and one of
the authors of Atari BASIC, responded that "all sub.stan-
tial software has bugs. If it's in ROM, the bug can't he
repaired unless a new set of ROM chips are brought out.
For whatever reason. Atari has never brought out a new
ROM set. To be fair about it, there are bugs in the original
TRS-80 which have never been fixed either. "
We might add that the new IBM computer has a bug
in the division routine. Also, the several fixes which
Commodore has made to its BASIC in ROM have cured
the original bugs, but brought about new problems of
software compatibility between versions.
BASIC To BASIC
I'm having trouble with the PET program on page
14 in Issue 23, ApriL 1982. I couldn't get it to
work. Now that I have looked at lines 140 and 150,
I'm confused. Isn't [the variable] "TI" always zero?
If so. ..doesn't this cause line 150 just to loop? At
least that's where my program gets stuck.
Guy Lillis
The program you refer to is a "fast-find" for cassettes, but
is designed to work only on Commodore cassette drives
(PETICBMIVIC). Programs which use only the keyboard
or screen can usually work (with some changes) on most
computers using BASIC. Hoxvever. technicptes involving
peripherals like tape drives tend not to be ven "portable"
between computer brands.
For example, the Commodore machines have a
.special variable called TI (for Time) which is an internal
clock. This vanable is always being updated by the com-
puter and can, therefore, be used to time events. In your
computer, TI is an ordinary variable, ahi^ays zero unte.ss
you assign, a value to it.
The 'fast-find" technique is so specific to the machin-
ety involved that it even needs adaptations to work on the
different models of the Commodore line. (See th^ following
letter.)
VIC Fast-Find
I need your help with a small problem. I entered
the BASIC code for the cassette tape to locate
programs on fast- forward as shown on Page 14 of
the April, 1982, COMPUTE!, and. although you
claim that it "can be adapted to any Commodore
J
A dynamic duo frf^m SSI for the
ATARI !
THE BATTLE OF SHILOH: A brigade-level simulation of the first grand battle of the Civil War.
pitting the Confederate Army against Grant's troops and Union gunboats.
l-il
/
Atari owners, rejoice!
First. SSI brought you THE
SHATTERED ALLIANCE'" and you
made it the popular fantasy war-
ganne it is today.
Now. we are proud to offer
two more games for your pleasure:
THE BATTLE OF SHILOH™ and
TIGERS IN THE SNOW"
In producing these games,
we've taken full advantage of the
Atari 400/800's brilliant graphics
capability and combined it with
our extensive wargame-design
experience.
For example, both games have
colorful map displays that can be
scrolled effortlessly so you can
keep track of all the action on the
vast battlefields. We've also
employed special rules and innova-
tive gaming systems to enhance
the sophistication, realism and play-
ability of these simulations.
And the result of all this hard
work? Two strategy games that
will truly challenge and excite your
game-loving mindl
At $39.95 each (available In
either cassette or disc version*),
they are waiting for you at your
local computer/game store today!
VISA and M/C holders can
order by calling 800-227-1617.
ext. 335 (toll free). In California,
call 800-772-3545, ext. 335.
To order by mail, send your
check to: Strategic Simulations Inc,
465 Fairchild Drive, Suite 108,
Mountain View. California 94043.
All our games carry a 14-day
money-back guarantee.
•TIGERS: 40K mini floppy disc or 40K cassette
for the Atari 400/800 with Atari BASIC cartridge.
SHILOH; 40K mini floppy disc or 32K cassette
for same. When ortering, piease specify disc or
Atari is a registered trademark of Atari Inc.
TIGERS IN THE SNOW: Ghostlike Nazi Tiger tanks and infantry sweep across the dark,
frozen forests of the Ardennes agalnsta surprised U.S. force in this division/ regiment- level
simulation of Hitler's last desperate attack
As part of our demanding standards of excellence, wc use tTiaXell floppy discs.
STKATEGIC SIMULATIONS IIXC
M
COMPUTE!
July, 1982, Issue 26
machine," I can't get it to run on the VlC-20.
I suspect that the memory addresses in the
PEEK and POKE statements for the Commodore
PET are different than the VIC-20, but since I
don't own the PET, I don't know how to convert
these few memory addresses to the VIC-20.
Since there are only three BASIC statements
that refer to memory addresses, could you inform
me what the VIC-20 equivalent addresses would be.
I believe that COMPUTE! has a wide following
among VIC-20 owners and that this data would be
of interest to many readers.
William E. Bender
You're right, POKEs, PEEKs, and SYSs are the least
"portable" aspect of BASIC. When yo^i try to translate
a program written for one computer model or brand, these
words are sure to give you problems. The following version
of tape Fast Find for VIC, by Associate Editor Harvey
Herman, was originally published last fall. It makes for
an efficient tape management system, but must be the first
prograyn on each tape.
I
100 REM VIC FAST FIND
110 REM
120 REM HARVEY B. HERMAN
130 REM
140 N=5:DIM A$(N):REM N IS # OF PROGRAMS *
ON TAPE
150 FOR 1=1 TO N:READ A$(I):NEXT I
160 PRINT CHR$(147);CHR$(144) ;" PROGRAM"
: :PRINT:PRINT "NUMBER NAME":PRIN
T
170 FOR 1=1 TO N:PRINT I;" ";A$(I):NEX
T IiPRINT
180 INPUT "FIND NUMBER"; JiPRINT
190 IF J<1 OR J>N THEN 160
200 IF J=l THEN 330
210 REM START OF ROUTINE TO FAST FORWARD
220 REM WAIT FOR RELEASE IF NECESSARY
230 IF(PEEK{37151) AND 64)=0 THEN PRINT "
PRESS STOP ON CASSETTE"
240 IF(PEEK(37151) AND 64)=0 THEN 240
250 PRINT "PRESS FAST FORWARD" : PRINT
260 IF(PEEK(37151) AND 64)=64 THEN 260:RE
M CHECK FOR PRESS
270 PRINT "OK" :PRINT:A=TI
280 IF ABS(TI-A) <(J-1)*360 THEN 280:REM F
AST FORWARD 6 SEC PER PROGRAM
290 POKE 37148, PEEK(37148) AND 247:REM ST
OP MOTOR
3 00 PRINT "RELEASE FAST FORWARD"
310 IF(PEEK(37151) AND 64)=0 THEN 310:REM
WAIT FOR RELEASE
32^ REM DYNAMIC KEYBOARD LOAD
330 PRINT CHR$(147) ;CHR${17) ;CHR$(17) ;CHR
$ (17) ;"LOAD ";CHR$ ( 34) ; A$ (J ) ; CHR
$ (34) ;CHR$(19)
340 POKE 198,1:P0KE 631,13:END
350 DATA PROGRAM 1, PROGRAM 2, PROGRAM 3, PR
OGRAM 4,PROGRAM5
«
Hidden Adventure
Regarding Rudolph F. Lauer's query in the May
issue: I am co-author of Fantasy Games Software's
PET programs Swordquest and Escape From the
Death Planet. We have both Original-ROM and
Upgrade- ROM versions of these games.
Except for a few early orders, our cassettes
include both versions. Users who have upgraded
their PETs should try loading from the (unlabeled)
flip-side of the cassette. If that side proves to be
blank, thev may send their cassettes to me with a
stamped reply envelope, and I will record the
Upgrade version for them at no charge.
J. L. Pietenpol
J. L. i'lelenpul
5711 Trinity Rd.
Raleigh, N'C 27607
GETting On Atari
I'm a new Atari owner and one thing bothers me
much about Atari BASIC. In Apple BASIC and in
PET/CBM BASIC, one keyword is GET, in terms
of strings. Atari's keyword GET has a different
meaning. How can 1 input characters without
pressing return? It would be much easier to make
advanced games without just using the joysticks.
Howie Fishman
To use Atari's GET command, you must first open a file
to the keyboard, e.g. OPEN#1,4,0,"K:". You can then
GET a keystroke with GET#I ,A. A (or whatever variable
you use) will contain the ASCII value of the key typed
'(A = 69 for "E",97 FOR" a", etc.). GET will always luait
for a keystroke.
You can use location 764 to see if a key has been
pressed. It normally holds 255, but when a key is pressed,
it will contain a "keyboard code" (not ASCII). POKEing
764 with a 255 will reset the register.
100 IF PEEK(764) = 255 THEN 100
no POKE 764,255
10 OPEN #1,4,0,"K"
Waits for
a key
100 GET#1,A
Gets a key
i
VIC Expansion Software
Why don't the manufacturers of software for the
VIC-20 offer more sophisticated software requiring
memory expansion? They do for all the other
computers.
Scott Barber
The VIC is a new machine and memory expansion is even
newer. Its library ofsoftimre is building quickly, however,
as the many ads in CORflPUTEl illustrate. For predictions
and information about VIC software, see Jim Buiterfield's
"Whither VIC?" in this issue.
I
THEY LAUGHED AT ME WHEN I SAT DOWN AT THE KEYBOARD . . .
BUT OH, WHEN I BEGAN TO PLAY! HERE'S WHAT THEY SAID:
BFL-ATOn [-"I've had to
replace three electro-
universal wristcouplers
since I got it"
PROTECTOR.
CORQUS I -"Even with a
class II embryonic
neuroiifter, it is disgustingly
difficult to play"
SLIME.
ADM-MARK 11+ -"More fun
than kicking the servonic
katdroid"
CHICKEN.
ELF-X2-"CanIbea
submarine when I grow up?'
IMUTILUS.
IMAUTILUS, PROTECTOR, CHICKEn AND SLIME ARE ALL TRADEMARKS Of SYTiAFSE SOFTWARE.
j^^pse
820 Coventry Rd.
Kensington, CA 94707
(415) 527-7751
FOR THE ATARI* HOME COMPUTER.
*ATARI ISA REGISTERED TRADEMARK OF ATARI, IPIC.
16
I
COMPUTE!
July. 1982, Issue 26
An Attack Of Hearts
When I do a POKE 756,226, enabling lowercase
and control characters to be printed on the screen
in graphics mode 1 or 2, the computer fills the
screen with a bunch of hearts. How do I get rid of
them? |J
" Larry L.
The alternate character set for Graphics modes one and
two is the bottom half of the full character set, i.e., lower-
case, graphics, and control symbols. Unfortunately, the
heart (CHR$(0)), maps into the place where SPACE is
encoded, resulting in a screen full of hearts. The mual
cure is to perform a SETCOLOR 0,0,0, sijice the SPACE
(or heart) defaults to color register zero. This xi'ill make
the hearts black, the default background color. Naturally,
you'll have to change this if the backgi'ound is not black.
Unfortunately, this prevents you from printing any
text in the hlacked-out color, reducing your available
colors from five to four. A superior, if more complicated,
procedure would be to modify the character set by zeroing
out the heart character. This requires additional RAM to
hold the next) cluiracter set and POKEing 756 with the
pointer to the custom character set. Here is an example
program: I
108 CHBAS=75b=CH0RG=57344
118 CHSET=(PEe«106>-8>*256
128 GRAF'HICS 1
138 POKE 756.226
148 ? #6:? #6;" now !cMraindl"=? «b; "
I CW^ftCTER i SET "
150 FOR 1=8 TO 511=REf1 ONLY HALF NEEDS T
0 BE TRftMSFERRED
160 POKE CHSET+LPEEK(CH0RG+512+I>
170 NEXT I
188 POKE 75b,CHSET/256
198 REM 'FOR l^i=l TO 50^NEXT W IS A PftUS
E USED ONLY FOR ETPHftSIS
195 REH NOT t€EDED FOR lO?KIHG PRCGRW1
208 FOR 1=0 TO 7 = POKE CHSET+L0 = FOR 1^1
TO 50 = NEXT L4:btXT I=REM ERASE HEART
210 ? #6:? t6^"ldOlnE"
220 EHD
More Workhorse Programs
for your computer to play with!
With these Creative Software hpme programs your Atarp or l^c®
can start playing in the real world'
HOUSEHOU) RNANCE
• 15 Income & expense calegories |
• Budgeting
• Monthly & yearly accounting
• Indicate tax deductible items
• Proiiuce tables 4 graphs
• S34.95 cassette
• S39-95 disk
LOAN ANALYZER
■ Amortizaiicn tables
> Compute interest charges
• Compare various loans
> Analyze loan terms
• Manipulate loan parameters
> $14.95 cassette
• S1995 disk
HOME INVENTORY
• Catalog your possessions
• User-delinable categories
• Search catalog for items
• Record serial S, purchase price
• Compute Ihe value ol items
• SI9,95 cassene
« S24.95 disk
CREATIVE
SOlh I InrARE 201 San Antonio Gicie.*270
A Division 01 ASCI. Inc. Mountain View, CA 94040
(415)948-9595
DECISION MAKER
" Decide between alternatives N
• Compute recommended Choices g
» Manipulate decision parameters |
• Weigh inlluencing factors H
• Save decisions on tape or disk 1
• S 19.95 cassette I
• S24.95 disk ^
CAR COSTS
• Record maintenance costs
• Itemize insurance payments
• Track fuel consumption
• Summarize all costs to date
• Compute cost of a tnp
• S19.95 cassette
• S24.95 disk
Ask about our many other recreational and home
application^ TO ORDER: VISA; Mastt-rCari check
or mottey order accepted. H chiirac, please include
expiration date of card. -Add $1.50 lor shipping and
liatidling. California residents add sales lax.
^issiLm
rATARI [OWNERS,
O High resolution graphics -
Life like motion.
O Instant replay on any shot.
O Superfine aiming.
O Pool room sound effects
O Choice of 4 popular games
See your local
computer dealer
or order directly
from IDSI.
Specify ATARI
or APPLE.
NOW YOU TOO
CAN PLAY POOL 1.5'
ON YOUR ATARI
48K DISK SYSTEM.
ALSO AVAILABLE FOR
THE APPLE ll'%8K
DISK SYSTEM.
ATARI is the registered trademark of ATARI Inc.
APPLE II is the registered trademark of
APPLE Computer Inc.
POOL 1.5 is trademark of IDSI.
I
18
I
COMPUTEI
July, 1982, Issue 26
A Monthly Column
I
Computers
And Society
David D. Thornburg
Associate Editor
Odds And Ends...
You folks sine love lo wriie letters! My mail load
from this coluinn and P'riends of the Turtle is large
enough that I don't always gel answers out right
away. If you have written and haven't heard from
me, don't despair — I will write as soon as 1 can.
I received several letters in response to the
"computers and the arts" columns. Reader Ted
Nemeth of New York wrote in part:
Dear Dr. Thornburg:
In "Conifiiitrrs and Sorifiy"in the Marrh
wtie oy COMPUTE! sou wrote "... Wfiifney
saw a new medium."'
Maiy Ellen Bute (my grandmotlier)
was the first (ahohitely) to use a light pen
on an oscilloscope to create animated patterns
with music. She worked with Professor
Theraman creating this technique. Her
work received major acclaim and showed at
Radio City Music Hall in New York for
years.
I have .shown her Mr. Whituex's hook
and ivhile .she enjoyed many of the graphics,
she felt his technique ofvisual-souvd inter-
pretation is not all that well developed. She
worked with many composers front (ieorge
Gershwin to Edgard Vare.se in developing
her theories. Since her tnethods did not
include the use of the digital computer, her
ivork (about 25 short films) has been all but
ignored. ...
As for myself, I am a student at NYfT.
I own an Atari 800 and am working on
programs similar to my Grandmother's,
except -with. Rock and Roll music. ...
Sincerely,
i
Ted Nemeth
I found Ted's letter quite interesting. Al-1 too
often we forget to look at the progress made with
technologies that preceded the ones which currently
hold our interest.
Several other readers shared their favorite
graphics programs with me. Among the finest
graphics packages I have seen for the Atari com-
puters is the program Graphics Master written by
Courtney Goodin (distributed by Datasoft, $49.95).
This program allows the user to create pictures in
either of two high resolution (320 x 192 pixel)
screens. I use one screen for small graphic elements
that 1 can then "pick up" and stand anywhere I
wish on the second screen. The user can intermix
text and graphics, and has several choices of text
size. Symmetry operations, such as rotations and
mirror retlections, can be performed as well. Since
text is treated as part of the graphics screen, you
can split a word in the middle of a letter if you
wish. This fine prtjgram pro\idcs many features
for its modest price. It is a tribute to its author that
one can create superb drawings using onlv the
Atari joystick as the input device.
I have just begun to explore a professional
graphics package for the Apple - more on that in a
later column.
The columns on computer games in the class-
room also generated a lot of mail. Most of vou who
wrote agree with the idea thai there is somethiiig to
be learned from the arcade games. In the area of
educational software, I have several new programs
1 am reviewing, including a beautiful .set of pro-
grams from The Learning Company (formerly
ALT) in Portola Vallev, California. As with the
graphics program for the Apple, these .software
reviews will have to wait for anotfier column.
Computer Literacy - Wfio Needs It?
Those of you who read this column regularly know
that I am a proponent of the use of computers in
the classroom. There seem to be two extremes to
the use of the classroom computer — as a tool for
programming the child through rote drill and
practice, or as an object of study and exploration.
My own bias lies toward the use of intrinsically
motivating learning games to reinforce basic skills
that were taught using conventional (himian
teacher) methods. In addition, I am a strong pro-
ponent of the idea that children shotild gain mastery
over the computer through the use of user friendly
languages such as PILOT and LOGO.
Historically, my argimient has been with those
who see the computer used only as a replacement
for or simple adjunct to a teacher — who see the
computei" as a data processing tot)l to probe the
student's skills and report all failings and progress
to a human for analysis and further action. I guess
that the thought of row upon row of school children
I
THE MOSAIC RAM SYSTEMS FOR ATARI
CLEARLY THE BEST
THE
SCREEN
CLARITY
YOU CAN SEE THE MOSAIC DIFFERENCE
WHAT THE EXPERTS HAD TO SAY
A.N.ALO.G. 400/800 MAGAZINE said in a 32K RAM
board comparison test: "The Mosaic 32K RAM showed no
sign of interference and gave the best screen clarity' and
"Mosaic uses what we feel are the highest quality
components which may improve reliability".
INTERFACE AGE said after replacing the Atari memory
board with a Mosaic 32K RAM: "Once in place there is no
noticeable change in screen clarity" and "in view of its
excellent performance it should be a serious choice for those
Atari owners intending to expand their memory"
Each Mosaic RAM board gives you more than just the best
screen clarity but also the best in reliability flexibilily and
compatibility The Mosaic RAM systems offer you the best in
every way — these features prove it.
■ Works In both the Atari 400 *& 8 00* computers.
■ 4 year guarantee.
■ Comp[ete instructions.
. ■ Test cycled 24 hours for reliability
■ Gold edge connectors for better reliability
■ Quick nO'Solder installation.
■ Full flexible memory configuration.
■ Can be used with 8K, 1 6K and future products.
■ Designed to take advantage of Atari 800 's superior bus structure.
■ Designed for inter-board communication in Atari 800.
■ Allows Atari 800 to have 2 slots open for future expansion.
■ Always the best components used for superior screen clarity and
reliability
■ Low power design for safety and reliability
■ Available companion board ( S5) to allow running The Mosaic RAM
systems independent of other boards.
THE MOSAIC RAM SYSTEMS FOR
THE SERIOUS ATARI OWNER.
THE MOSAIC 32K RAM
For the serious Atari owner. This Is the 32K RAM board
you've been hearing about. It has every feature you
could want from a RAM board and more features than
any other board offers. Each Mosaic 32K RAM comes with
complete instructions so in a few minutes you will have
expanded your Atari 800 to 48K RAM. The Mosaic 32K
RAM works as well In the Atari 400, but we suggest the
NEW Mosaic Expander.
THE MOSAIC EXPANDER
This is the most effective way you can expand to 32K
RAM for your Atari 400 computer And at almost the I6K
price! The revolutionary Mosaic Expander is a memory
board with 16K RAM in place and open slots to add 16K
more from the Atari 1 6K board that comes with your Atari
400. Each board comes with complete instructions so in a
few minutes you will have expanded to 32K RAM.
* Trademark of Atari, Inc.
rimosoic
ELECTRONICS
PO. Box 708 Oregon City Oregon 97045
503/655-9574
20
I
COMPUTE!
July, 1982, Issue 26
sitting in front of sterile terminals performing the
same tasks that could be performed better under
human guidance and supervision is just not com-
fortable to me.
But now, it seems, there is even another issue
to deal with. There appears to be growing concern
that computer literacy is not an appropriate topic
for our .schools to teach. According to Eric Burtis, a
member of the Palo Alto, California-based Ad Hoc
Committee on Basic Skills Educaiion, the education
ot children in basic skills is suffering from the use
of computers in the classroom. The committee
stales that "The suggestion that every American
citizen must become computer literate is fallacious
and untrue, just as it would be untrue to state that
every citizen must become an airline pilot if mass
air transportation is to remain available to ail
mankind."
If the committee is of the opinion that our
children are being laughl computer skills at a level
commensurate with an airline pilot's training, they
certainly have not been paying attention to what is
happening in the classroom. It is erroneous in the
extreme to suggest that those of us who are com-
puter literate are an isolated breed that provide
services to the masses (as do airline pilots). The
reality is that we can either control technology
ourselves, or let others control ii for us.
The digital computer promises to be the most
significant technological development of the twen-
tieth century {Ada, forgive me for leaving Babbage's
machine out of the discussion). Today — just a few
short years into the era of the personal computer,
there is almost no one who fails to come in contact
with computers, if only indirectly.
If computer literacy is not appropriate subject
matter for our children, then what is? Is our edu-
cational system so sound and complete that it is
impervious to further improvement? The fimction
of schools is partly to prepare our children for
survival in the real world. This requires the acqui-
sition of skills in math, reading and writing, and a
sense of historical perspective, etc. It includes the
development of the whole child - the creative as
well as the analytical mind - in order that each
child is prepared to take an active participatory
role in society.
Increasingly, ours is a society governed by the
How of information. And, increasingly, this infor-
mation flow is mediated by computers. By not
having "computer literacy" courses in the class-
room, groups such as the Ad Hoc Commitee on
Basic Skills Education are insuring that only child-
ren from certain economic and cultural back-
grounds will have a chance to learn about this
technology. To suggest that computer literacy be
denied to all our children is elitism in the extreme.
In the information age, those of us who are com-
puter literate will be at a tremendous advantage
over those of us who are not. If we believe the
principle of equality of Oppoitimily so central to
our national identity, then we must have the
foresight to realize that this equality can only occur
when we provide equivalent educational oppor-
tunities to all of our children - regardless of their
economic Ijackgioimd. Tlie schools are the most
a|jpr()priate place to do this.
A Few Words About Innovision...
I own a company called Innovision. In the past,
Innovision has made forays into the commercial
markel]>lace with products such as the Presto-
Digitizer tablet. It has also served as the umbrella
company for my constilting practice, and as the
haven from which I write books and articles.
The fact is that I enjoy writing a great deal,
and, as an Associate Editor of COMPUTE! I felt a bit
awkward also appearing as an occasional adver-
tiser. While I have never done or said anything
that, in my opinion, constituted a conflict of interest,
it is e.ssenlial that my readers know that no conflict
could ever arise.
Accordingly, I have disbanded the conunercial
product lines of Innovision. I write, I occasionally
consult, and I am involved with some new ventures
riui by other ]jeople. Innovision no longer has any
products of its own.
While this was not an easy decision to make, it
was aided by the increased time needed to answer
your letters to Friends of the Turtle (I received 15
today alone). I have never failed to speak my mind
from these pages, and I'm not planning on stopping
now! Ihank vou all for your tremendous support.
ScotcK Diskettes
Rely on Scotch* diskettes to keep your valu-
able data sate Dependable Scotch diskettes
are tested and guaranteed eiTor-free. Trie low
abrasivity saves yout read/write heads.
They're compatible with most disketlednvps.
(800)235-4137
Dealer inquiries
invileO
.'ACIFIC
EXCHANGES
too Foolhill Blvd
San Luis Obispo. CA
93401 In Cal call
(800) S92 5935 or
(8Q5I 543 1037
i
Announcing the Printing
reakthrough of the Century:
Smith-Corona: TP-1 Text Printer
^.
• LOW Cost
Daisy Wheel Printer
^799
• Microprocessor
Electronics
serial or Parallel
Interface
Simple, Reliable
Mechanism
ACT NOW: Limited Supply, LOW, LOW Cost
Smith Corona, one of the largest
manufacturers of small printers in
the world, gives a whole new
perspective to printing with their
electronic text printer— TP-1. The
TP-1 is a microprocessor controlled,
high quality daisy wheel printer.
It produces perfectly formed,
executive quality printouts at the
speed of 120 words per minute.
Typewriter quality printing at dot
matrix prices.
Simple, durable and dependable,
TP-1 may be used with word
processing systems, microcom-
puters and most small business
systems. Compact and attractively
Adaitional ribbons S2.95
Styled, the TP-1 blends well with
any setting.
Now, all your letters, documents
forms and reports can have the
crisp, professional look you
demand— for business or personal
use— at an affordable price. TP-1,
the electronic text printer.
Don't delay, order your TP-i
TODAY at the low price of $799.
Micro Printer Marketing offers
same day shipping, nationwide ser-
vice and invites dealer inquiries.
Catalogues available. No shipping
charges on pre-paid orders.
iMicro " Call Micro-Printer Marketing
Santer „- , 1-800-523-9859 ^
IMCII^KGniig in PA call collect 21 5/ 433-3366 I^B
MasterCard and Visa Accepted
M5*
22
COMPUTE!
July. 1982. Issue 26
If there's a topic that you would like to see covered in this
column, send your suggestion to: The Beginner's Page,
COMPUTE! Magazine, P.O. Box 5406, Greensboro,
NC, 27403.
The Beginner's Page
Making Files
Woric
Rtchord Monsfield
Assistant Editor
Last month ue examined files, often the most diffi-
cult aspect of programming for the new com-
puterist. Here we'll conclude this overview by
looking at some specific details about file handling.
Ill geiieral, a file is a list or a collcclion of
information which has been saved on a tape or a
disk. A list of all the people you send C'hristmas
cards to could he "memorized" on tape/disk by the
computer and would then be a file.
How is this list of names and addresses
"memorized" and how, at Christmas, is it used to
print the addresses on envelopes? A file by itself is
incajxible of r/omg- anything: it is not a program, it's
just a list. .\ separate program is needed to create,
update, and make use of files.
"Mailing Address," "File Manager," and others
of this type are called data base management pio-
grams. Their primary function is to build, add to,
modify, or print something out from files. They
manage a collection (a basif) of data.
You can, of course, write your own custom
data liasc manager. This would amount to writing
a program (or a set of programs) which would let
you manipulate the list on tape or disk.
Writing a large data base management pro-
gram is not an easy task — it can involve sorting,
.searching, and other complex programming tech-
niques. Nonetheless, handling Christmas card lists
is something the novice can accomplish and it's well
worth learning. Files do, though, represent some-
thing of a challenge. Your computer's manual will
contain information on the necessary punctuation
and syntax for BASIC'S commands which manipu-
late files. However, the following brief overview-
might be of help.
OPEN, PRINT#, iNPUT#, And CLOSE
Where a program would be stored by the simple
SAVE instruction, a file is stored bv a combination
of OPEN, PRINT#, and CLOSE. (On the Apple,
PRINT is used in a special way instead of PRINT#,
We'll get to that in a minute.) Likewise, a program
is just LOADed, but a file is "loaded" into the
computer with OPEN, INPUT#, and CLOSE.
It is a bit more complicated with files, but the bonus
is that you can do more manipulating with files,
easier appending (adding to them), easier merging
(making two files into one), and so on.
The command OPEN is generally used to
communicate with a disk or tape drive. It's like
pulling open a file cabinet drawer - once a file is
OPENed, you can tiien get at the records inside.
Here's what you would do to OPEN a file named
"inventory" on a disk drive attached to a Commf)-
dore, Atari, or Apple:
Commodore
10 OPEN 1,8,8,"0:INVENTORY,S,R"
The first number (1) means that this file will here-
after be called # 1 . When you pull something out of
it, you would use INPUT#1 (you can have up to
ten files OPEN at one time). The second number
(8) means "disk drive" (a 1 in this position would
mean: open a file on the cassette drive), fhe second
eight is a "secondary address" which allows you to
give afiditional instructions. With disk drives, just
u.se eigiit.
The "():" specifies drive zero and the "S" means
.sequential file. The Commodore disks can create
other kinds of files: random, relative, and program
files, hut .sequential is the simplest. Finally, the "R"
means read. You will be using INPUT# to get
things out of this file. (A "W" here would mean
xvrite and you would PRINT# to the file.) To make
this "reading or writing" distinction for ta])e files,
the secondary address is used: a <jne means write
and a zero means read. (10 OPEN 1,1,0,"INVEN-
TORY" would be the same as the example above,
except it makes a cassette file.) No drive number is
specified and the "S" is not necessary since cassette
files can only be sequential files.)
Atari
The equivalent of the disk example above is similar
in Atari BASICS:
10 OPEN* 1, 4,0,"D1: INVENTORY"
Here, the second number (4) stands for read
(use 8 for write), the next number (0) is not used by
the disk drive (but is necessary to satisfy the syntax
of OPEN), and the "Dl" specifies the first drive
(there can be up to four drives attached, Dl through
D4; D: means Dl:).
Apple
To OPEN an Apple disk file, you first define a
special character, D$, which holds the "control-D"
character (you cannot see it). You would type:
10 D$ = "(hold down both CTRL and D keys)"
(or you could use 10 D$ = CHR$(4) instead)
1 5 PRINT D$;"OPEN INVENTORY"
a
THEY CAME OUT OF THE BLUE
OF THE WESTERN SKY
and it's up to you to stop them!.
EM
FEATURINC ARCADE ACTION
GRAPHICS AND SOUND
You. know those' alien residents. who look like blue jello
and snnell like a cow pasture on a warm day? Well,
•they're up in arms about something and have declared
war! TheiF weapons are Cyborg .ships- with . their
intelligent parts" -.suspended inside, these Cyborgs
^ pursue like crazed bat^s to try and-kamika.ze your crew
"' ^pods. You're armed with anV
unlimited supply of Guided Energy \jfV„:,i; — •
jSarts, but even when you blast ^?-;;;2>
fern, their doomsday missiles f' \
■come right at you! Good luck. -'
- . tYou'll need it!) • ^
usually found only on coin-operated video arcade
machines. These include advanced play levels,
running high score (with high score ■ 'clear"
option), two player option, brilliant horizpntaji
^r^ing, and great sound effects. .4!
WlhlBffinitWIBIBfBffni ^:!
ATARiVEflSiON
'.mmUeei'iSSp.a'iJi^Slaris
4SK mSK $29.95
* Vffv/ViVavne" Westmoreji
and Terr^Jigjan
16K TAPE S19.95 3ZK DISK $24.95
HE ARE OVERRIIH
t6K TAPE $19.95 24K DISK $24J5
(30Si 862-6917 IQUESTIONSJ
ORDER FROM YOUR FAVORITE DEALER
, or CALL TOLL FBEE IMO» 327-7171
) lORDEBS ONLY PLEASE I ^
24
I
COMPUTEE
July, 1982, Issue 26
In our simple example, it isn't necessary to
include drive and slot numbers with the OPEN
command. Line 15. however, could indicate drive
one, slot six il we add "OPEN INVENTORY,
S6,Dr' to the quoted information. The Apple uses
the format in line 15 for its disk commands; first
control-D is printed and then the desired action is
described within the quotes.
Putting Somettiing In And Taking Something Out
On the Commodore and Atari, you can put infor-
mation into an OPENed file by using PRINT#.
For Commodore files you could put the word
"PENCILS" into the file by:
20 PRINT#1, "PENCILS"
and Atari would be:
20 PRINT#l;"PENCrLS"
The Apple uses two lines:
20 PRINT D$;"WRITE INVENTORY"
21 PRINT "PENCILS"
(After line 20, the following PRINT command will
be considered a print to the file, not to the screen).
Going the other way. you get something out of
an OPENed file Ijy using INPUT# in combination
with a string variable to "hold" whatever comes
from the file (they come back to the computer in
the order they were PRINT#ed). To get the word
"PENCILS" back from a Commodore file:
20 INPUT#I,A$
(Then later you could print AS to see "PENCILS")
and Atari is:
20 INPUT#1,A$ I
(You must have previously DIMed A$).
Again, the Apple uses two lines:
20 PRINT D$;"READ INVENTORY"
21 INPUT A$
After you are finished INPUT#ing or
PRINT#ing from a file which had been OPENed
as file # I , v'ou would CLOSE 1 (PET/CBM) or
CLOSE#l (Atari) or PRINT D$;"CLOSE INVEN-
TORY" (Apple). When you've finaliv CLOSEd.
von are free to use that file ninntjer (# i in these
examples) for some other file, with a different
name. CLOSE is essential, however. Without it you
could permanently lose part or all of a file, or even
damage other files.
INPUT# And PRINT# Hints
INPUT# or PRINT# work very similarly to the
way INPUT and PRINT work from the keyboard
and to the screen. The only catch is that PRINT#
needs some special handling. It's best to give it a
line all to itself: :
20 PRINT#1,AS (Commodore)
30 PRINT#I,B$
20 PRINT#l;A$(Atari)
20 PRINT D$; "WRITE NAMEOFFILE" (Apple)
21 PRINT A$
The reason for putting PRINT# on its own
line is that this is an easy way to separate items in a
file: with "carriage returns." Just as 10 PRINT A$ /
20 PRINT BS will cause BS to be on the line below
A$ on the screen (since using a new line "forces" a
carriage return to take place) - a separate program
line puts a carriage return symbol onto the tape or
disk.
Manipulating Fiies
Files are usually created within loops. Here's a
simple program to "write" a file to tape:
10 DATA BILL, SANDY, KATIE, LARRY
20 OPEN 1,1,1,"NAMES": REM (A PET/CBM TAPE
FILE)
30 FOR 1=1 T04
40 READA$
50 PRINT#1,A$
60 NEXT I
70 CLOSEl
Since tliere are four names in this file, the loop
counts up to four, READing a new A$ from the
DATA line each lime through. Since PRINT#! is
by itself on line 50, it will send carriage returns to
the tape each time it PRINT#s, separating the
names on tape. This way, there will be no question
that a name should be BILLSANDY.
When this file is later read into the computer,
it would be very useful to know when it ends, how
big it is. There are two easy ways to do this. You
could add the word "END" to the DATA line and
then change line 30 to read: FOR I = 1 TO 5. Or,
you could put the "count" (the number of records
for this file) on the tape or disk itself, as part of
the file. To do this, you would add a line: 25
PRINT#1,4.
Here's a "reader" program which brings the
records from this second type of file back into the
computer, finding out first what the count is:
10 OPEN1,1,0,"NAMES": REM (A PET/CBM TAPE
FILE)
20 INPUT#I,COUNT:REM THIS WAS THE FIRST
ITEM ON THE FILE
30 FOR 1= 1 TO COUNT
40 INPUT#1,A$
50 PRINT A$ (TO THE SCREEN)
60 NEXT I
70 CLOSEl
If you use the "END" technique, the reader
program would not u.se line 20 and would add line:
45 IF A$ = "END " THEN GOTO 70. Notice also
that you can PRINT# and INPUT# both numeric
and string (alphabetical) variables.
One final note about something which might
not be immediately obvious: if vou update a file on
II
>4li^^
SUNRISE
SOFTWARE
LEADER IN DISCOUNT SOFTWARE — 18- 30% OFF
ATARI
Action Quest D 13.95
Adventures M2ea T 15.95
Adventure on a Boat D 19.95
All Bat>a& Forty Thieves D 26.35
Angle Worms T 12.00
Andromeda D 31 .96
Assembler Editor C 47.95
Asteroids C 35.95
Bishops Square D 23.95
Black Forest D 19.95
B-1 Nuclear Bomber T 13.00
Bug Attack D,T 23.95
Cenltpede C 35.95
Character Gensralor D 15.95
Conf iicl 2500 T 13.00
Compu.Read D,T 15.95
Compu-Math/Fractions D.T 15.95
Compu-Malh/Decimals D.T 15.95
Crush, Crumble & Chomp O.T 23.95
Crossfire D.T 23,95
Datestones of Ryn D.T 15.95
Deflection T 11.95
Dung Beetle D 23.95
Empire ol Overmind D 28.00
Enlertamer Kit C 95.00
Fastgammon T 15.95
Fort Defiance T 16.00
Frogger D 27.95
Galactic Empire T 15.95
Galactic Trader. T 15.95
Ghost Hunter D.T 16.78
Ghostly Manor D 19.95
HI-RES Mission Asteroid D 19.95
HI-RES Wiz& Princess D 26.35
Invasion Orion D.T 19.95
Jawbreaker D 23.95
Kayos D.T 27.95
KRazy Shootout C 39-95
Lisplnterpertef ...D 120.00
Lords of Karma T 16.00
Lunar Lander T 12.00
Match Racers D 23.96
Missle Command ^ C 35.95
Mountain Stiofll T 12.00
Mousealtach D 27.95
Next Step D 31 ,95
No. Atl. Convoy Raider T 13.00
Nukev^ar , T 13.00
Pac Man C 35.95
Pathfinder D 27.95
Planet Miners T 13.00
Pooll.5 D 27.95
Proorammer Kit C 63.88
Q.S. Forth D 63.96
Raster Blaster D 23.95
Bear Guard T 15.95
RescueatRigel D.T 23.95
Ricochet D,T 15.95
Shattered Alliance D 31.95
Softporn Adventure D 23.95
Space Invaders C 35.95
Starbase Hyperion D 18.35
Star Raiders .0 39.95
Star Warriors D,T 31 .95
Sunday Goll T 1 3.00
Tanktics D 23.20
Temple of Apshal D,T 31.95
Threshold D 31.95
3D Tic-TacToe T 15,95
3D Supergraphlcs D.T 31 .95
Treasure QuesI T 15.95
VersaWriler Tatilel A 240.00
Visicalc D 200.00
Warlocks Revenga 0 28.00
PET/VIC-20
UNITED MICROWARE
Amok T
Allen Stitz T
Blastolds , T
Breakout T
Carom T
Dragon Maze T
Gobbler T
Invader Fall T
Laser War T
Long Division — . T
Meteor Hun C
Raceway T
Robot Blasters C
Skyma 1 h T
Space Division T
Spiders of Mars C
Super Hangman T
Stars Wars T
3D Maze T
ViCalc T
ViCal T
ViCheck T
ViTermA.... ,T
RS232 Board A
3K Cartridge A
8K Cartridge A
Others
B-1 Bomber T
Computer Acquire T
Computer Stocks i Bonds T
Conflict 2500 T
Conquest , D
Dragons Eye T
Guns of Fort Defiance T
Midway Campaign , T
N.A. Convoy Raider T
planet Miners , T
Thinker D
15.15
19.95
15.15
12.00
12.00
13.55
19.95
17.55
15.15
13.55
47.95
12.00
31.95
12.00
12.00
47.95
15.15
13.55
12.00
11.95
19.95
19.95
15.95
39.95
31.95
71.95
13.00
16.00
13.00
13.00
180.00
15.96
16.00
13.00
13,00
13.00
396.00
• •••••••••
BONUS
••••••••••
PAC MAN
FOR ONLY $30.00
with
ANY ORDER OVER
$150!
••••••••••
D-Dlsk, C-CarUldge, A-Accessorf, T-Cassette
24 HOURS A DAY
7 DAYS A WEEK
ORDER TOLL FREE
800-854-0561 EXT. 812
800 -432-7257 (CALIF.)
NO HASSLE!
GUARANTEED
REPLACEMENT POLICY
We take MASTERCARD or VISA.
(Include card U and expiration ^ggi^
date. I California residents add WH^
6% tax-Include S2.00 (or postage. ^^^
Prices subject to change.
1 Mhz- 12 Bit A/D
lor your Apple II Computer
The APPLESC0PE-HR1 2 analog 10 digital convener uses
a high stability buried zener voltage reference and a flash
A/D to give 12 bit accuracy with a 14 bit dynamic range,
• DC to 1 Mhz Programmable Sample Rate
• 2048 Sample BuHer Memory
• Prelrigger Vievving
• Continuous or Single Sweep
• 4 Channel Software Support
(requires additional power supptyj
• External Trigger Input
The staridard software provided with each APPLESCOPE-
HR 12 includes all of the functions necessary to turn your
Apple II computer into a high quality digilat storage
oscilloscope. In addition all oltheSCOPE DRIVER Options
are b^ing up-graded to handle the higher resolution data-
Price per cnannei S695
The original APPLESCOPE still provides the optimum
price/perlormance trade off for Ihose users requiring 8 bit
convener resolution,
APPLESCOPE INTERFACE
• DC to 3,B Mhz sample rate
• 1024 byte buKer memory
• Pretngger Viewing
• Programmable Scale Select
• Continuous and Single Sweep Modes
• Single or Dual Channel Trace
Price lor the two board Applescope system is $S9S
EXTERNAL TRIGGEFi ADAPTER S29
SCOPE DRIVER Advanced software forthe APPLESCOPE
analog to digital converters makes lull use of the computing
power of Ihe Apple II to create a total data acquisition
system. Available options include:
• Signal Averaging-Acquires 1 to999signalsweepsand
displays the averaged resull,
• Digital Volt Meter ■ Allows useas real time OVM or use to
measure points on an acquired sweep.
• Disk Storage- Allows automatic storage and recover of
acquired data on floppy disks.
• S pectrum Analyier-Ca iculales and displays frequency
spectrum o( acquired data.
BUS RIDER
LOGIC ANALYZER for the APPLE II
The BUS RIDER circuit card silently ndes Ihe Apple II
peripheral bus ana allows real time tracking ol program
(low, Soltware provided allows set up of trace parameters
from Ihe keyboard and read back of disassembled code
alter a program has been tracked.
• 32 bit by 51 2 sample memory buffer
• Monitors Data and Address bus plus 8 external inputs
• Trigger on any 32 bit word or external trigger
• Prelrigger viewing
The BUS RIDER is an invaluable development tool lor
anyone working with Apple II or Apple 11+ computers.
Pnee S395
RC ELECTRONICS INC.
7265 Tuolumne Dr.. Goieta, CA 931 1 7
(805)968-6614
a PET/CBM computer, you cannot put it back on a
disk with the same name. You might have read it
off the disk and into memory to make some changes.
But before you OPEN-PRINT#-CLOSE it back
onto the disk, you must first "scratch" (remove) the
original version in order to replace it with the up-
dated one. Again, each computer has different
formats for this and your manual will describe
them. Some systems, the Atari for example, auto-
matically replace files when one "comes into" the
disk with the same name as one alieady on the
disk. This .?fra/c/(//i^^ of unwanted files is unnecessary
for tape files, they will write over the old file {if you
rewind the tape).
There are numerous ways to maniptilate files
— this is precisely why it is a challenging pro-
gramming task. The programmer has more control
over what is happening, but more responsibility,
too. As always, start out small by perhaps just
creating a file with yoin* name on it, reading it back
into memory, and printing it on the screen. Then
try ten names, a mailing list, updating records, and
so on. Eventually you'll become adept at file
manipulation and will find many u.ses for these
valuable programming techniques. ©
TOLL FREE
Subscription
Order Line
800-345-8112
In PA 800-662-2444
FILEMANAGER 800
The Atari 800 Disl<-based
File Management System
FILEMANAGER 800 is a powerful personal,
as well as professional tool. The full use of
graphics and sound make FILEMANAGER
800 an extremely easy-to-use file-keeping
system.
FILEMANAGER 800 provides:
• User-defined formats
• Index on any field at any time
• Ultra fast sort
• Wild card search
• Up to 2000 characters per record
• Full screen input and edit
• Search on any combination of fields
• Format lists and mailing labels
• Single keystroke commands
• Full mathematical capability
• Computed, constant, and dollar fields
• Combine and convert existing files
• Elegant human engineering
• Database merge with Datasoft's Text
Wizard
• Exclusive Datalock^'^ electronic key
protection
• Compatable with Axlon's 128K Ramdisk
• And much, much more ... ^_^
Use FILEMANAGER 800 to create maiimg
lists, inventory and business records, cus-
tomer lists all customized to your own needs!
Requires 4QK and a disk drive
820 Coventry Road
Kensington. CA 94707
(415)527-7751
\ferbatim
flexible disks
Call Free (800) 235-4137 for
prices and information. Dealer
inquiries invited. C.O.D. and
charge cards accepted.
PACIFIC
EXCHANGES
100 Foothil! Blvd.
San Luis Obispo. CA
93401. In Cal. call
(800) 592-5935 ot
(805) 543-1037
FILEMANAGER 800 is a trademark of
SYNAPSE SOFTWARE
Atari is a r
trademark of Atari, Inc.
July. 1982, issue 26
COMPUTE!
27
This exciting action game is for the Atari and the VIC.
Blast out new caverns, dig the gold, and return to the
sitrface for your reward. !J you run out of dynamite, gel
to the surf ice fast or you'll ivauder the mine fn-ever. And
watch out for cave-ins — they can block your exit, or
Program 1. Atari Version
worse!
Gold Rush!
Joseph Weber
Rapid CiV, SD
After reading iht- fascinaling article "Using The
VIC Joystick," by David Malrnberg {Home and
Educational Comfniliug! . Fall, 1981), I conidn't wait
to try out what I had learned. It wasn't long after I
got to the VIC keyboard (hat the Gold Rush game
started to emerge.
After a few faLse .starts, here it is.
The game gives von one more chance lo use
your joystick. In this game yon have live miners to
dig as much ,gold as you can from the Lost
Goldmine. Each miner has ten sticks of dynamite
(charges) lo blast his wav into the mine. The miner
gathers them by inoving to the same space as the
dot (pokcX,8l).
The number oi pieces of gold is coimted and
displa\ecl at the l^ottom of the screen. The mnnber
of charges left is also displayed at the bottom of the
screen. After galliering all the gold you can, you
must move (nit of the mine lo the Assay Of lice (die
heart) to exchange the gold for moncv. When
you touch tlie heart, the gold is exchanged Ibr
money at the rate of Gold times Remaining
Charges.
Cave-ins Can ... Put You Out Of The Gome
Ihat all stjimds easy enough, Ijui there are several
things that can hap[:>en to slow up yoiu" progress.
First, there are the cave-ins. Since the Lost
Goldmine is very old, cave-ins occur every time )ou
blast. I'hese cave-ins can block your way out or
(how can I put this nicely) ah... put you out of the
game. When you are caved-in upon, yom- gold is
lost and the miner is replaced with an asterisk. If
you can reach the asterisk, you regain all of the
gold the "dead" miner liad.
Another danger can beset you if you should
use up all of your charges. When this happens, you
have only a short time to get back to the surface. If
you cannot exit the mine, either due lo a cave-in or
a slow miner, then all is lost and you end up wan-
dering the mine forever.
Let's plug in our joysticks and strike it rich.
There's gold in them there hills!
Atari Version Notes
This game simulates the appearance of the
\'IC \ersion by using a custom character set
in Graphics mode 1. Notice that only half of
the character set in ROM needs to be trans-
ferred lo RAM, since Graphics modes 1
and 1;^ can only access 64 cliaraclcrs (to allow
multicolor text), so we loop from 0 lo 5 1 I.
This game makes extensive use of the
LOCATE connnand lo "look at" the com-
puter's screen, such as checking for various
objects the miner finds. Al.so, unlike the
VIC version, if you clear ihc mine of all
gold, you can start over with a new mine
when you "cash in" yoiu" gold. You get
tliree "lives."
160 RB1 ATARI G(]LDRUSH
110 REM
120 REM Custom d'la.racter-s:
136 DATA 56.5b.. Ibi 5b, 84/ 16.40.68
i4y MTft 17e..S5j 170,85. 170. £5. 170.35
150 QhTA 0/28..68. 110.. 126.62.28.0
160 CtftTA 129. bb. 36. 24. 24. 36. 66. 129
170 DATA 128.64.32.16.8.4.2.1
180 DATA 1.2..4..8.16.32.b4.12'8
190 DATA lb.- lb. 124. 16. lb. 16. 56. 124
2-00 Din CHAF^$(8).l.lHir;H';3.2>
210 CHAR$="*+-=<>';"^mhER=3
220 GRAPHICS 1+16= SET COLOR 4.6.4-SETCuLO
R e.l.l0:SETCuLOR 3.4.10
2:B ? tb .: " liXDRLSH ! " = SETCOLOR 2.3.0
240 POSITION y.0=? #6; "please w^lt"
250 CHSET=( FtEK'i 106 )-S )*256 ■■ CHijRG=57344
260 IF F-EEKd^iSET+y^'Oe THEN 340
270 ?m. 1=0 TO 511 ■■POKE CH::;ET+I.PEEK(CHO
RG+n^^EXT I
280 FOR 1=1 TO 7
230 CHF'OS=CHS-ET+( ASC( CHAR*( I ) >-32 >*8
390 FOR J=0 TO 7
310 REAO A = POKE CHF'US+.J.A
320 1€XT J^hEXT I
330 FOR 1=32 TO 39 : POKE CH:5ET+I.255-PEEK
(CH0RG+I> = 1€XT I
340 F^E 75b.r^;ET.-25b
350 POSITION 9.0:? #6.i" -CD)
360 l-IUGGETS=0
370 FOR 1=1 TO 22 = FOR .J=0 TO 19
380 IF RHD<Qy>0,4 THEN UXOR ASCC CHAR*-: 2
)>+128 = PLuT .J. I = GOTO 480
390 IF I>3 THEN COLOR A3C( CHAR$( 3 ;■ ) = PLOT
J.I=HJGGET3=NUGGETS+1
408 t€XT .J=f-EXT I
410 CHAR;GE3=10:POSITIOt^ 9.23- ? #b.;"[CHAR
28
COMPUTEI
Jutv. 1982. Issue 26
GESl %■ CHARGES
420 XPOS=11:YF-O:5=0^ £11^=0^ GOTO 596
430 REM miH LW
440 ST=STICK<0>^TR=STRIG'::0;'
450 IF PEEK(20»15 THEN PCtKE 703,<IHT(lb
m^: 0 ) )t 16+ 10): FtJKE 20. 0
460 IF Ef1F T^EH SOUND LT. 18.= Sa=T:*:(T<S)
+2^TI=TI+MF TI>208 THEN SOUND l,e..0.0^
GOTO 1126
470 IF 1-TR THEN IF EriF=0 THEN S20
486 IF ST=15 T^EN 448
498 U=-( ST=14 )S( VPOS>Q X ST=13 m VP0S<22
)
500 H=-( ST=1 1 )*( vpuS>0 )+( ST=7 M MPuS< 19 >
510 COLOR 32: PLOT ypa5..YPK;
520 XP0S=MPO3+H:VP0S=VPOS+U
530 LOCATE yp05/i'PuS..l.K^T
546 IF WHAT=3£ THEN 598
550 IF 1-JHhT=ASC(CHAR$(3)> THEN GOSUB 640
=G0TO 590
560 IF WHHT=ASC(CHARt(7;') THEN GOSUB 768
:G0TO 5S)
570 IF \>mi=A THEN GOSUB 676 ^RB1 CASH IN
t
580 SOUND 0.106.12.8:FiJF: l-j=l TO 28 ■■NEXT
14= SOUND 0. 0. 0.. 0 : XPOS=XPOS-H ■■ YPuS=YPOS-i J =
COLOR 138 : PLOT MFUS /I'POii MjJTO 448
5^ COLOR 138 = PLOT XPOi/i'FtiS
600 IF EtIF Am VPOS=0 THEN EriF=e = COLOR 3
2 = FtOT XPOS/yF-OS^SijUND lAi..0..0 = GuTO 418
610 FOR W=8 TO 8 STEP -1 = SOUND e..W-;;5.12,
W = f€XT U
el's GOTO 440
630 GOTO 630
640 FOR l-J=15 TO 8 STEP -1 = SOUND 0..20.10,
\A- hea w= ggld=G!XD+i = nuggets=nuo:ets-i = i
F f-UGGETS<W THEM mGG£TS=U
650 Pi3SITI0t4 0.23 = ? #€.;. "sold ";GOLD.:" "
660 RETURN
670 REM CASH IHi
680 SOUND 2.. 4,. 10.4
690 FOR W=10 TO 5 STEP -l=FuR 1=15 TO 8
STEP -1= SOUND 0.W.18.I=NEKT I^^EXT H
7^ SOUND 2..0..Q.0
710 CftSH=CASH+uOLD:^CHAKGES = GOLD=e
720 GOSUB 650
7:^ F-OSITION 14.0 = ? ibiCASH
740 IF NLIt:GET3=0 THEN POP =GOTD 366
750 RETURN
760 REM GET THE GOLD FFSM DEAD MINER
770 FOR 1=3 TO 1 STEP -1
780 IF IJHICH'::I.0>=;KPuS and NHICH(I.1)=YP
OS T^€N S^J
796 t€XT I=RETURM
see gold=gixd+1'Wich<i..2:j=gosub 650
810 RETURN
820 F£M EXPLOSION
830 XF'=XP0S+H = YF-YP0S+U=IF YF-8 THEN 448
840 RESTORE 3887
£■56 DATA 0,.0.."1.-L1; L-L L 1..-1
860 FOR 1=1 TO 5= READ A..E
870 IF XP+H>=0 AND XP+A<=i9 AND YP+E>=1
(Hi YP+B<=22 THEN LOCATE XP+A.. YP+B..ZZ= IF
ZZ=45 THEN Mi:GETS=NUGGETS-i
880 ma l:i:^OR hSC(CHAR*-(4))
898 IF :>y>9 Am XP<20 Th€H PLOT :>f-/Y'P
980 COLOR aSC<CHAR*(5))=IF YP>2 AND XP>0
1\£H PLOT ;=<P-hYP-l
910 IF YP<22 A^«3 XP<19 THEN PLOT XP+l.YP
+1
920 COLOR HSCt:cmR$(6;0=IF YP>2 AND XP<1
9 Th£N PLOT :=<F'+l/fP-l
930 IF YP<22 AHj XP>8 THEN PLOT XP-LYF+
1
940 DL=PEEK( 568 )+256*PE£K( 56n = 3U=PEEK( 7
12)
958 FO? W=15 TO 8 STEP -0.5:SOUhCi 0..50..0
.W = SW=1-SW = P0KE 712. SWh 4*16+6) = POKE DL.
112*SW=hEXT W
960 POKE DL. 112 = POKE 712. SU
978 RET-I
980 COLOR 32= PLOT XP,YP=IF YP>2 AND XP>0
TVEH PLOT XP-l.YP-1
998 IF YP<22 AND XP<13 TbEN PLOT XP+l.YP
+1
1080 IF YP>2 AND ^^P<19 TVEN PLOT XP+l.YP
-1
1010 IF YP<-22 AND XP>0 THEN PLOT XP-l.YP
+1
1020 COLOR 138 = FtOT XP0S/tP0;5
ia30 FOR 1=1 TO 20
1040 RX=INTC20*Rm(0)) = RY=I^m22*RND(0)+
1>
1058 LOCATE R-'X.RY-1.Z2
1060 LOCATE R:>=:,F:^'.Z = IF Z=32 AfCl Z2=171 T
m\ COLOR 171 = F10T RX.RY
1070 IF Z=138 ThEH 1130
1080 bEXJ I
1898 CHARGES=CHf«GES-l= POSITION 17/23=?
#6; CHARGES;" ";
1100 IF CHARGES >0 THEN 448
1110 TI=0 = Ef1^=l=F"OSITIOt-] 9..23 = ? #6; "set
outCA) ";=GOTO 440
1120 PSh DEAD ril^ER
1130 FOR 1=14 TO 0 STEP -8 . 5 = SETC0U3F; 3,
4,1 = SOUND 0. 1 .. 10.. I = ^EXT I = RESTORE 3488
1140 READ A,W=IF A>8 ThEN SOUND 8. A. 18.8
= FOR 1=1 TO l#2 = NEXT I
1150 IF A>8 TI€N SOUtl 8. 8. 8.0 = FOR H=l T
0 5 = t-EXT W = GOTO 1148
1 1 60 CCLOR ASC-t: (mPM 7 ':> ) = PLOT XPOS . 'fPuS =
I44ICK MINER. 2 )=GOLD = 0X0=8 = GOSUB 658
1170 miCH':: MINER, 0)=XPOS = WHrCH(MIbER.l)=
W'OS = MI^£R=MIhER-l = IF nilER=0 THEN 1218 =
REM !J*ME OUER
1180 SETCOLOR 3.4.10 = tjJTO 418
use [»TA 100.. 30. 100. 28.. 100.. 5.. 186. 38. S5.
PERFORMANCE NEVER
SEEN BEFORE ON A
MICRO-COMPUTER
MASTER is a DEVELOPMENT TOOL as well as a
SOFTWARE SECURITY TOOL totally Integrated with BASIC,
giving to new instructions permitting:
GENERATION OF
INDEXED-
SEQUENTIAL FILES
WITH:
• Keyed access
• Scan forward or backward by key
• File size iimrted by disk drive only
• 10 files opened simultaneously
• Hashing
• Key regeneration possible
• Instructions: open, write, read,
exist, start, next, onerror
GENERATION OF
INPUT AND OUTPUT
SCREEN FORMATS
USING A
REVOLUTIONARY
SCREEN
GENERATOR:
• Easy instruction to create a page:
scroll, reverse, clear, line, col.
« 127 zones for input or output,
completely parameterized withi
numeric formatting instructions:
decz. rgqz, inz, outz, clearz
• Screen page creation witti
subsequent saving on disk
instructions: load, save, copy,
exchange
REPORT FORMATS
MASK
FORMATTING
PAGINATION
Date control
22 digit precision math ( + , -, /, x)
Direct disk access
• Save programmes with a Nolist
Command
• Security key
Master can be either development or a runtime system
Master designed for CBM 4000 or 8000
Master was developed by Micco Application
Distributed by
CIVD
CANADIAN MICRO DISTRIBUTORS LTD.
500 Steele Ave., Milton, Ontario L9T 3P7 416-878-7277
i*k:'---'_-S;-2.""'^'-5B"?.HC-s '- -.ijL
«: .-V-r. ^ft^/ ;:\.' i.TS-i
30
COMPUTEl
July. 1982. Issue 26
46.50.30. 100.20. 105.' 10. 100.. 30
1200 DATA ""i.S
1210 POSITION e.0 = ? #6.: "9-iiVie ouer"
1220 POKE 7©.PEEK'::53770)
1230 IF PEEK 53273 ><>6 THEH 1220
1240 RUH
Program 2. VIC Version
100 CLR:S=0tC=10:M=4:L=0:W=0
110 PRINT" {CLEAR} "
112 GOSUB300
120 POKE36879,9
130 GOSUB800
132 Z=7712:FB=0:Y=250
140 POKEZ,32
150 IFJlTHENZ=Z+22:IFPEEK(Z)=10 2THENZ=Z-22
160 IFPEEK(Z)=35THENZ=Z-22
170 IFJ2THENZ=Z-1:IFPEEK (Z) =102THENZ=Z+1
180 IFPEEK(Z) =35THENZ=Z+1
190 IFJ3THENZ=Z-22:IFPEEK(Z) =102ORZ<7680THE
NZ=Z+22
200 IFPEEK (Z) =35THENZ=Z+22
210 IFJ0THENZ=Z+1: IFPEEK (Z) =10 2THENZ=Z-1
212 IFPEEK(Z}=35THENZ=Z-1
2 20 IFPEEK (Z) =8 1THENS=S+1:GOSUB6000
222 IFPEEK(Z)=83THENGOSUB4000
224 IFPEEK (Z) =42THENGOSUB3000
230 IFFBTHENGOSUB5000:GOSUB8000
240 PRINT" {H0ME5 {20 DOWN} { REV]G0LD{OFF} " ; S;
TAB (10) " {REV}CHARGES{OFF}";C
250 POKEZ,90
260 IFC=<0THENGOSUB9000
270 DD=37154:P1=37151:P2=37152
280 GOSUB500
290 GOTO140
300 REM INSTRUCTIONS
310 PRINT"{DOWN} {04 RIGHT} {REVlVIC GOLDRUSH
{OFF}"
320 PRINT:PRINT:PRINT" {04 RIG HT} {REV} Z {OFF}
= MINER"
330 PRINTrPRINT" {04 RIGHT} {REV}Q{ OFF} = GOL
D"
340 PRINT:PRINT" {04 RIG HT} { REV} * { OFF} = DEA
D MINER"
350 PRINTjPRINT" {04 RIG HT} { REV} & {OFF} = DIR
m II
360 PRINT:PRINT" {04 RIG HT} { REV} S{OFF} = ASS
Ay OFFICE"
362 PRINT:PRINT;PRINT" {02 RIGKT}USE {REV}FI
RE BUTT0N{OFF} TO"
364 PRINT" {02 RIGHT}BLAST"
370 PRINT" {HOME} {20 DOWN} {REV} PRESS ANY KEY
TO PLAY"
380 A$="":GETAS:IFAS=""THEN380
390 PRINT" {CLEAR} "
400 RETURN
500 P0KEDD,127!P=PEEK(P2)AND128
510 J0=-(P=0)
520 P0KEDD,255:P=PEEK (Pi)
530 Jl=-( (PAND8)=0)
540 J2=-( (PAND16)=0)
550 J3=-{ (PAND4)=0)
560 FB=-( (PAND32)=0)
570 RETURN
800 REM DRAW BOARD
810 X=7702
820 F0RI=1T022
830 POKEX,35
840 X=X+1
8 50 NEXTI
860 POKE7712,32
870 X=7724
880 F0RI=1T018
890 F0RJ=1T02
900 P0KEX,35
910 X=X-1
9 20 NEXTJ
930 X=X+24
940 NEXTI
950 X=8098
960 F0RI=1TQ22
970 P0KEX,35
980 X=X+1
990 NEXTI
1000 FORI=1TO180
1010 X=INT(RND(1) *374)+7724
1012 IFPEEK (X)=35THEN1010
1014 IFPEEK (X)=102THEN1010
1020 POKEX,102
1030 NEXTI
1040 FORI=7724TO3097
1050 IFPEEK (I) =102THEN1070
1052 IFPEEK {I)=35THEN1070
1060 P0KEI,81
1070 NEXTI
1080 POKE7689,35:POKE7692,35:POKE7691,8 3
1090 GOSUB2000
1200 RETURN
2000 REM PLACE MINERS
2002 IFM<0THEN9500
2010 X=;7680
2020 FORI=0TO4
2030 POKEX,32
2040 X=X+1
2050 NEXTI
2060 X=7680
2070 F0RI=1T0M
2080 POKEX,90
2090 X=X+1
2100 NEXTI
2110 C=10:S=0
2120 Z=7712
2130 PRINT" {HOME} {20 DOWN}
214 0 FORI=814 2T08164:POKEI ,32: NEXT
2150 IF M=0THENPOKE7680,32
2200 RETURN
3000 REM DIG UP MINER
3010 S=S+S1
3200 RETURN
4000 REM TALLY GOLD
4 00 2 FORI=7694TO7701:POKEI,32:NEXT
4010 F0RJ=1T05
4020 PORI=15TO0STEP-1
4030 POKE36878,I
4040 POKE36876,230
4050 FORT=1TO10:NEXT
4060 NEXTI
4070 POKE36876,0
4080 NEXTJ
4090 C1=C:IFC1=0THENC1=1
4100 W=S*C1+W
4110 PRINT" { HOME} {REV} {WHTj {13 RIGHT} $"; STR5
(W) ;".00{RED}"
4120 POKE7691,83
4130 M=M-1
4140 GOSUB2000
4150 RETURN
All the advantages
of Mupet, PLUS...
MHif rinHJifiiM rrurui rnjrrjjnii III III rn 11 mill itiiHiMliMiiu
i/HJ'H Jij'iijf Mrirruriirurri rii rii Ml iiti iiiiii ill III luiuniiu II
/j^/ijf ri/rMniJMiJi iiM Ni in II uri III Mil Miiiii iiVMU lui MiMiiu
j/^Hi/fM^ni^riuriMriMriNiiriMMMiiiiiMiMMMMtLiMMnHnu
^ _, r^EaiVA" dual drive
^l conrmrmdope L^E9IVI »tappy disk
CMD
CANADIAN MICRO
DISTRIBUTORS LTD.
500 Steele Ave.,
Milton, Ontario L9T 3P7
416-878-7277
MUPET
saves money
and time too!
Mupet II offers all the
advantages of Mupet, plus:
• Can protect against
incorrect use of harmful
disk commands.
• No more printer interface
- background printing
supported on IEEE, RS 232C
and parellel ports included
in controller.
• Programmable 32K RAM
controller provides user
defineable operating systems.
• Up to 16 computers may
be connected to central
printer and disk drives.
Integrate intra-office terminals
for common data access
allowing independent analysis
for such functions as:
• Accounting
• Sales forecasts, budgets
and orders
• Production scheduling
• Word processing
The only product available
capable of serving Daisy
Chained Commodore
Computers up to
100 feet.
i
MUPET II
a small price for
huge capabilities, from:
»995.00
Peripherals
unlimited..
FANTASTIC PRICES!
OUR FAST SERVICE, PRODUCT
SELECTION AND OUR CUSTOMERS'
SATISFACTION MAKE US #1.
ZENITH
Z-89-48K
Z-90-64K DO
Z-1 9 Terminal
Z-121 Monitor 12'
S2299
S2588
S777
$149
ATARt COMPUTERS
Atari 800 16K
$688
Atari 400
$318
Atari Interface Module
$174
Atari 810 Single Disk
$444
Atari 815 Dual Disk
TBA
Atari 830 Modem
$166
Programmer
$59
Entertainer
S84
Star Raiders
S34
16K Mem. Exp. for Atari
$74
32KMem. Exp. for Atari
$114
NEC PRINTERS
7710/30 SpinwriterR/0
7720SpinwriterKSR
3510/30 SpinwriterR/0
3500 Serial Spinwriter
NEC DOT MATRIX
PC-8023
Call for prices on ribbons, etc.
$2279
$2649
$1699
$1599
$474
MORE PRINTERS
Anadex 9500/9501
$1295
Anadex DP-9000
$1049
Okidata Microline80A
$339
Okidata Microline 82A
$474
Okidata Microline 83A
$724
Tractor (OKI 80 + 82 only)
$60
Diablo 630
$2044
MONITORS
Sanyo 12 " GRN Pfiosphor $266
Sanyo 12' Black + Wtiite $239
Amdek12'300GRNPhosptior $164
Amdek 12' Color $344
NEC12"GRNPfiosptior $164
NEC 12 "Color $344
EPSON PRINTERS
MX-70
MX-80w/Graphics
MX-80 FT (Friction + Tractor)
MX-100 (15 'Carriage)
$288
$444
$544
$744
Call tor prices on
Ribbons, Cables and Interfaces
NEC-PC 8000
Series Microcomputer
PC-8001 A Computer w/32K
PC-8012AW/32K + Exp. Slots
PC-8031A Dual Mini Disk
PC-8032A Add-on Mini Disk
$888
$588
$888
$777
Call for Software Prices
TOLL FREE
1-800-343-4114
ORDERING INFORMATION
Our order lines are open 9AM to 6PM
EST Monday thru Friday. Phone
orders are welcome; same day ship-
ment on orders placed before 10AM.
Free use of Mastercard and VISA. Per-
sonal checks require 2 weeks
clearance. Manufacturer's warranty
included on all equipment. Prices sub-
ject to revision. C.O.D.'s accepted.
For service, quality and delivery call:
PERIPHERALS UNLIMITED
(617)655-7400
62 N. Main St.» Natick, MA 01760
July, 1982, Issue 26
COMPUTEI
•33
5000 REM EXPLOSION
5002 IFC<=0THEN9000
5004 IFPEEK(Z-1)=35THEN5012
5010 POKEZ-1,86
5012 IFPEEK (Z+1)=35THEN5022
5020 POKEZ+1,86
5022 IFPEEK (Z+22)=35THEN5032
5030 POKEZ+22,86
5032 IFPEEK (Z-22)=35THEN5100
5040 POKEZ-22,86
5100 POKE36877,220
5110 FORL=15TO0STEP-1
5120 POKE36873,L
5130 F0RT=1T075:NEXT
5140 NEXTL
5150 POKE36877,0:POKE36878,0
5152 IFPEEK(Z-1)=35THEN5156
5154- POKEZ-1 , 32
5156 IFPEEK(Z+1)=35THEN5160
5158 POKEZ+1,32
5160 IFPEEK(Z+22)=35THEN5164
5162 POKEZ+22,32
5164 IFPEEK (Z-22)=35THEN5170
5166 POKEZ-22,32
5170 C=C-1:POKE8138,32:POKE8139,32:POKEZ,9 0
5300 RETURN
5000 REM DOT PICKUP
6010 POKE36878,15
6020 FORL=10TO1STEP-1
6030 POKE36376,L*25
6040 NEXTL
6050 FORL=1TO10
6060 POKE36876,L*25
6070 NEXTL
6080 POKE36876,0:POKE36878,0
6100 RETURN
8000 REM CAVE IN
8010 X=INT(RND{1)*1)+10
B020 F0RI=1T0X
8030 V=INT(RND(l)*418)+7702
8032 IFPEEK (V)=35THEN8030
8 0 34 IFPEEK (V)=90THENGOSUB860 0:GOTO132
8036 IFPEEK (V)=81THEN8030
8040 POKEV,102
8050 NEXTI
8100 RETURN
8600 REM SQUASH MINER
8610 P0KE36378,15
8620 FORI=255T0128STEP-4
8630 POKE36874,I
8640 FORT=1TO30:NEXT
8650 NEXTI
8660 POKE36878,0:POKE36874,0
8670 M=M-1
8680 POKEZ,42
8682 S1=S
8690 GOSUB2000
8800 RETURN
9000 REM GET OUT COUNTER
9 004 IFY<128THENPOKEZ,3 2:GOSUB2000:GOTO132
9010 PRINT'MHOME} {21 DOWN} (02 RIGHT) { REV}TIM
E TO GET OUT{OFF}"
9020 POKE36878,15:POKE36876,Y
9030 FORT=1TC30:NEXT
9040 Y=Y-4
9050 POKE 36878, 0:POKE36876,0
9100 RETURN
9500 REM PLAY AGAIN
9520 PRINT" [HOME} {21 DOWN} {WHT} {REV}PLAY AGA
IN?Y=YES N=NO{OFF} {RED] "
9530 IFA$="Y"THEN100
9540 A$="":GETA$:IFA$=
9560 IFA$="Y"THEN100
9999 END
"THEN9540
COMPUTE! The Resource,
Space Shuttle ^'
" LAUNCH and ASCENT TO ORBIT
Simulatton Software for the Atari 800"
Pilot the space shuttle into orbit! Written in basic
and machine language, this is the most accurate
space shuttle simulation available for the Atari.
Not a game, but a serious simulation,
(ages 12 to adult) Requires 24K RAM and 1 joysticl<.
Cassette only, S12.95 (16 page booklet included)
^mQmwm
SOFTWARE
P.O. Box 1123. Solvang CA 93463
(formerly Cocoa Beach, Florida)
Atari is the trademark of Atari, Inc.
asmmatuHcm
FOR 16K ATARI 400/800
A fast action player vs. pta/er game of space combat
Realistic gravity and orbital mechanics
Extensive use of Atari Graphics and sounds
700% Machine Language ,
Up to four players zf-^^*"^ ■'■"' '"^i^gi^jr
Four skill levels
Four battle modes
Simple joystick controls
Disk or cassette
J29.95 at your local
computer store, or send
ctieck or mortey order
tiirectly to Apogee
Software.
Dealer iryqulries invited
Challenge your friends or neighborhood aliens In an
out-of-this-world game of skill and daring. Attack with
your Photon missiles, Protect yourself with shields.
Maneuver with your thrusters or enter hyperspace to
avoid damage or destruction.
Add $1.00 for shipping.
Add 6% tax in California
Atari, Atari 400, and Alari 800 are
r^gi5t«r6d trademarl(5 ot Atari, Inc.
OGEE SOFTWARE
%1& Farialotie Ave
Cnais*oftri. CA 9UI1
Phone 1213) &a2-935a
34
COMPUTEI
July. 1962. Issue 26
You've seen the bank ads: "Retire a Millionaire." Type in
this short program (it will run on Atari, Radio Shack
Color Computer, PETICBM, VIC, and Apple) and see
for yourself how IRA accounts compute. The program
uses very little viemoij. The "^ " symbol means "to the
power of "
IRA Planner
Richard and Betty Givan
Richmond, KY
Most get-rich schemes of the past have proven tcj
be of questionable legahty and duljious worth. Tlie
latest promotion, however, is endorsed by the US
CJovernmcnl and seems foolproof. This device is
the Individual Retirement Account (IRA), ex-
panded in 1982 to allow up to a S2000 ($2250 in a
joint plan with a nonworking spotise) yearh- deposit
to be |)ut into a piivatc retircrticnt account.
This amotmi is flcductible from the person's
gross income during the year deposited, decreasing
the income tax accordingly. The retirement fund is
then free to gi ow at the prevailing competitive
interest rate — compounded daily and tax iree -
until it is withdrawn during retirement. Although
taxes are then due, presumably the taxpayer will
be in a lower tax bracket and so pay a lesser tax.
The Relationship Between Inflation And Interest
The allure of the plan is in the rapid growth of the
princi[jal through i:ompoiuifl interest at the c:ur-
rently high rales. Hence the ads in which banks all
but guarantee that you can be a millionaire upon
retirement via a $2()0{) yearly deposit for 35 years
at a \2^/( return. Actually, your account u'ouid be
worth an astotmding $1,161 ,059. Such a modest
sacrifice in order to retire a millionaire!
As with all gel-rich plans, however, there is a
catch — not a legal or even an ethical one, but a
mailer of economics. The IR.A ))i"omolion cam-
paigns conveniently overlook the devastating effects
of inflation on your million. Al the same lime that
compound intcresi is building vour fortune, infla-
tion is eroding it. Historically, the interest rate is
fairly well dictated by the rateof inllation. Although
temporary imbalances occur, economists generally
agree that, in the long run, the interest rate will
seek otU a level approximately three to four percent
higher than the inHation rate.
Assuming that the prevailing inilation rate
(say nine percent) holds steady, your retirement
fortune of .'1 1 , 1 (i 1 ,059 from the above example wilt
really be worth only $56,875 in the purchasing
power of 1982 dollars. You ma)' have a carload of
dollars in the year 2017, but the Cadillac you buy
to haul it home would cost $306,000 and the
gasoline to power it would be $25 a galioni
This is not to say that an IRA is a bad way to
sa\e. It does offer immediate tax relief, and that in
itself might provide you with the incentive to put
aside .some funds for vom golden years. But it
would be well to put the numbers in perspective
when planning for your future.
The program asks )ou several questions: the
amount of mone)' you wish to set aside each year;
the lax bracket you are currently in (which can be
found by reference to the IRS booklet accompa-
nying your tax forms, but is not really essential to
the rest of the program); your age when you begin
and end the plan; and the average interest and
inllation rates you expect to experience (here's
where a crystal ball program would be nice).
The progiam then displays the lax savings you
would receive the first year in the plan. (Income
and tax rate would probably fluctuate too much to
benefit from attempting to compute these over the
lifeof yoiu' IRA.) The sum of \oin" deposits is
displayed, followed by the principal of the account
increased hv accumulated interest. Then the real
spending power of your final nest egg is shov\n by
reducing the principal to reflect the inflation rate,
^'ou can see its woith in terms of the 1982 dollar.
Bear in mind that this money is taxable when with-
drawn, also. You can then easily experiment witli
different interest and inflation rates at this point
without having to answer the other questions
again.
One note: the two questions about inflation
and interest ask for tlie figures expressed as decimals.
In other words, if you want to answer 12% inflation,
you should type . 1 2 and 6% interest would be
entered as .06.
10 REM IRA PLANNER
30 DIM AS{1):REM this LINE ONLY NECESSARY ~
FOR ATARI
4 0 PRINT"AT WHAT AGE DO YOU PLAN"
50 PRINT"TO OPEN AN IRA ACCOUNT" ;: INPUT A
60 PRINT: PRINT"AT WHAT AGE DO YOU PLAN TO ~
RETIRE"; :INPUT Al
70 Y=A1-A
80 PRINT:PRINT "HOW MUCH DO YOU PLAN TO"
90 PRINT"DEPOSIT PER YEAR";:INPUT D:C=D
100 PRINT:PRINT"WHAT IS YOUR TAX BRACKET?"
110 PRINT" (ENTER PERCENTAGE EXPRESSED" : PRIN
T"AS A DECIMAL) ": INPUT P
120 PRINT:PRINT"WHAT IS THE AVERAGE INTERES
T RATE YOU
130 PRINT"EXPECT FOR THE ACCOUNT OVER THE
140 PRINT"YEABS IT EXISTS? (ENTER PERCENTAG
E
150 PRINT"EXPRESSED AS A DECIMAL) ": INPUT R
160 PRINT:PRINT"WHAT IS THE AVERAGE INFLATI
Commodore Programs
Move into the
Fast Lane with
PetSpeed — The Optunizing
Basic Compiler that runs Commodore
BASIC 40 times faster. You can
dramatically reduce long processing
times, tedious disk handling, and long
print runs. No other compiler can
offer the same speed, compatability
and trouble-free compiling as
Petspeed.
Compatible — Petspeed
compiles any BASIC application and is
available for any combination of
4000 and 8000 series Commodore
equipment.
Faster The key that sets Pet-
speed apart from other compilers is
optimization. Where most compilers
merely translate from one language
to another, Petspeed analyzes your
source program to eliminate unnec-
essary complexities, thus speeding
processing time. Your program is
reduced to much smaller components
and reassembled into a far more effi-
cient form. Compare these optimizing
features;
• 4-Pass compiler.
" Automatically uses faster integer
arithmetic when possible.
• Automatically handles frequently
occurring variables and arrays,
• Subroutines no longer need be
located at the beginning of your
program.
• Petspeed automatically calls all
subroutines at maximum speed.
• Petspeed runs twice as fast as
other compilers.
• Larger programs require far less
memory when
compiled.
Easy to Use Petspeed is as
easy to use as these screen displays
illustrate.
Direelory
BEFORE
compilation.
Simply type in
your prn^rnm
Security a security device is
provided to run Petspeed, but no run-
time key is necessary for compiled
programs. You're free to build in
your own protection. Petspeed code
cannot be listed by others, so com-
piled programs cannot be tampered
with. Your programs belong entirely
to you.
Move your Commodore into the fast
lane today with Petspeed. And save
$25 too! Send this coupon today to
til -.vmiiltirt etiic <.e Hi
^17^^ dates trn
'iiur pfojriB.jt" pr)
Directory
AFTEfl
compilation
It isn't necessary to add compiler
directives. Simply type in the pro-
gram name. In less than 2 minutes,
you'll see your program run up to
times faster.
SMALL SYSTEMS ENGINEERING
222 B View Street
Mountain View, CA 94041
(415)964-8201
Dealers: Ask for our free demo disk.
Price $325
Offer Expires 8/S1/82
Pleasu rusti Petspeed today! My
disk format is LI 8050 IZ 4040.
My computer is II 8032 P 4032.
My ctieck for $300 [plus 6'/!% sales tax
for CA res.) is enclosed.
D Please send more information D I'm a dealer. Send me your
free demo disk.
Name
Company
Street
City
_Slate.
-Zip.
Mail to: Small Systems Engineering
222 B. View St., Mountain View. CA 94041
C7
Aj com*^
odorG
TZ..^ 8032
omput^c»-
(Vlodet
•3.
JUST A SAMPLE OF THE MANY PRODUCTS WE CARRY, CALL US FOR OUR
WE WILL MATCH SOME ADVERTISED PRICES ON CERTAIN PRODUCT^t0
PAGE CATALOG.
TED UNDER SIMILAR "IN STOCK" CONDITIONS.
Tomorrow's Technology Today
C=^
m. Commodore Computer
VIC 20 Personal Computer S 299.95
VIC 1515 Graphic Printer * 395.00
CBM 4016 S 995.00
CBM 4032 $1295.00
CBM 8032 $1495.00
CBM SuperPet 9000 $1995.00
CBM 8050 Dual Disk Drive $1795.00
CBM 4040 Dual Disk Drive $1295.00
CBM 2031 Single Disk Drive $ 695.00
CBM 4022 Tractor Printer $ 795.00
CBM 8010 IEEE Modem $ 279.00
CBM Dataselte $ 74.95
CBM-IEEE Interface Cable $ 39.95
IEEE-IEEE Interface Cable $ 49.95
NEC Spinwriter Printer
NEC 7730 $3085.00
NEC 7710 $3085.00
NEC 7720 $3610.00
NEC 3510 $2290.00
NEC 3500RD $1895.00
Tractor Feed Options are available
Professional Software
WordPro*'^— A Family of CBM Word Processing Programs
WordPro 2 Plus $ 199.95
WordPro 3 Plus $ 295.00
WordPro 4 Plus $ 450.00
WordPro 5 Plus (for CBM 8096) $ 450.00
The Administrator (DataBase for CBM) $ 650.00
POWER -^(Programmer's Utility ROM) $ 89.95
InfoPro™ (DataBase for CBM) $ 295.00
Epson Printers
MX-70 $ 299.95
MX-80 w/graphtrax $ 645.00
MX-80 FT $ 745.00
MX-100 FT $ 945.00
INTERFACE CARDS
8141 RS-232 Interface Board $ 75.00
8145 RS-232 Interface Board
w;2K Buffer $ 149.00
8151 RS-232 Interface Board
w;X/ON-X/OFF $ 170.00
8161 IEEE Interface Board $ 55.00
8131 Apple Interface Card $ 85.00
8232 Apple Interface Cable $ 35.00
8220 TRS-aO Cable $ 35.00
Atari
Atari40016K $ 399.00
Atari 800 16K[incl. BASIC cartridge). $ 899.00
Atari 410 Recorder $ 99.95
Atari 810 Disk Drive $ 599.95
Atari 822 Thermal Printer $ 299.95
Amdek IVionitors
Video 100G (Limited Quantity) $ 179.00
Video 300G $ 200.00
Color 1 $ 449.00
Color2 $ 999.00
Diablo 630 Printer
Diablo630 $2710.00
Tractor Option $ 350.00
CMD iVIupet
MC-«OOAMupet Controller $ 995.00
(Multi-User Controller for
CBM Computers)
CM-100 Channel Module . . $ 250.00
Printer Module $ 350.00
Qume
Spring 9/45 $2495.00
Tractor Option $ 210.00
WordPro, POWER and InfoPro are
registered trademarks of
Professional Software Inc.
NEECO
679 Highland Ave.
Needham, MA 02194
(617) 449-1760
TELEX: 951021
MON-FR! 9:00 - 5:30 E.S.T.
MASHRCARD*V1SA
ON RATE"
170 PRINT"YOU EXPECT DURING THE YEARS"
180 PRINT"BETWEEN OPENING THE ACCOUNT AND
190 PRINT"RETIREHENT? (ENTER PERCENTAGE
195 PRINT"EXPRESSED AS A DECIMAL) ": INPUT I
200 S=D*P
210 PRINT:PRINT"YOU WILL SAVE $ "; INT (S) ; " 0
N TAXES THIS YEAR."
220 T=D*Y
2 30 PRINT: PRINT"THE TOTAL AMOUNT DEPOSITED '
INTO YOUR
2 40 PRINT" IRA ACCOUNT OVER THE " ; Y ; " YEARS '
IS":PRINT"$"; INT(T) ; " ."
250 FOR J=l TO Y
260 X=D*(l+R/365)"365
270 D=X+C
280 NEXT J
290 PRINT:PRINT"WHEN YOU RETIRE, THE AMOUNT
IN YOUR"
300 PRINT"ACCOUNT WILL BE S " ; INT(X) ; " , "
310 2=(1+I) "Y
320 W=X/Z
330 PRINT:PRINT" .. .WHICH IS WORTH S";INT(W)
;" IN 1982"
340 PRINT"DOLLARS."
350 PRINT:PRINT"WOULD YOU LIKE TO TRY THIS "■
AGAIN WITH
360 PRINT"DIFFERENT INTEREST AND INFLATION '
RATES"
370 PRINT" (Y OR N)"; '.INPUT A$
380 IF A$="N" THEN END
390 D=C:GOTO 120 (©
Undutter
Your Desk!
Put your Commodore computer
in a desk of its own,
Si^e it w8l look great,
and the desk is smaS enougti
to fit afrnost anywhere.
But tlie real benefits are
your personal comfort
and efficiency.
interlink, Inc.
Box 134
B«iTven Springs, Ml 49103
;61§ 473-3103
If you're interested in Apples,
call MAUG.
v^l^V MAUG is a Special Interest Group
^^^^ (SIG) of Apple"' users on the CompuServe
Information Service. SIGs are active and. growing groups
of individuals who share a common interest and form
an "electronic" club using the CompuServe Information
Service as its communications medium. Share advice and
exchange information with other Apple users across town
or anywhere around the coiintiy.
We think you'll lUte the CompuServe Information Service:
CB simulation, electronic maU, news wires, financial
information, games, databases, program.mLing languages,
big mainframe computer power and free data storage. All
for a basic charge of only S5.00 an hour nights and week-
ends. All you need is your Apple, a modem and some inex-
pensive software. The software, and a free demonstration,
are available at — of all places — a Radio Shack* Computer
Center. CompuServe Information Service, 5000 Arlington
Centre Blvd., Columbus, Ohio 43220. (614) 457-8650.
CompuServe
TAKE A BYTE
OUT OF YOUR i
SOFTWARE COST!
Save 20-40% on all
major Brands of micro-software
D 90 day guarantee-a product satisfaction
guarantee.
D Largest Inventory of old and new
releases.
□ Next Shipping byUPS-orwepayfreight.
No per item tiandling fee.
WARHINGII Buyi ng from Software Galore
SAVES MONEY!
AVAILABLE NOWII
Pac-Man and Centipede
Member of the B«ller eusiness Bureau
SOFTWARE GALORE
A MEMBERSHIP BUYING SERVICE
For free catalog/orders call
21 3-827-1 851 or 1-800-423-6326
Mail to
P.O. Box 10005
Marina del Rey, CA 90291
^Letter Quality 9Hnting
^t^tsSest
FOR APPLE, ATARI, COMMODORE, IBM,
NEC, OSBORNE 1, TRS 80, and others
OLYMPIA TYPEWRITER
REN TEC ES INTERFACE
ESlOO/101/105
■
Installation in 15 minutes
• 92 Character electronic
using existing EStOO/lOl/
keyboard
105 cables
• Dual piicti. 10 and 12
«
CMOS logic for minimal
• 17.5CPS
dram on power supply
• All settings from keyboard
•
Hi or low true Status bits
• Auto correction to full line
•
Accepts RS232-C serial
• Daisy type print
with 7 crystal controlled
mechanism
Baud rales
• 14 '/„ inches writing line
*
Accepts Ceritronics
• 1400 dealers nationwide
parallel interface
•
Selectable auto, line feed
$1495.00 ES100 TYPEWRITER & INTERFACE
$295.00 INTERFACE ONLY-
•COfilMODORE SLIGHTLY HIGHER
Aphorized Distributor fo'r: NEC, OLYMPIA, SANYO, EAGLE, SHARP, KONAN
DEALER INQUIRIES WELCOME
RENfllSSflNCE TECtiNQLEIGY GQRPQRnTmN
1070A SHARY CIRCLE. CONCORD. CA 94518 • (415) 676-5757
VOICE I/O THAT WORKS!
for the COMMODORE and APPLE
Voice I/O has ccsme a long way from the
barely inlelligiQIe comouleir speech of on-
ly a lew years ago It is now possitjie to
enter dalaorcommanOs to your computer
iusl by talking to it and Ihe computer can
lalK back wilh clear, pleasant, human
Sounding voice.
The COGNIVOX models ViO-10O^ (far
Commodore) and VtO-1O03 (lor the Apple
II + ) are at the lorelront ot a new genera-
hor ol Voice I/O peripherals that are easy
to use. offer excellent performance and
are aflordatily priced
SOME SPECIFICATIONS
COGNIVOX can be (lamed to recognize
up to 32 words or phrases chosen by ihe
user. To tram COGNIVOX to reccgnue a
new word, you simply repeat the word
thriee times undef the pfompttng of the
system.
COGNIVOX wlH also speak wjih a voca-
bulary of 32 words or phrases chosen by
the usQr This vocabulary is independent
of the recogniiion vocabulary, so a dialog
with the compLirer i$ possible Memory re-
quirements for wo^ce response are approx-
imately 700 b/les per word
For applications requiring moi'e ttian 32
words, you can have t*o or more vocabu-
laries and switch back and forth between
them. Vocabularies can also be stored on
disk.
computers
iVt'X'i'i/>'^^-\A-«--
HOW IT WORKS
COGNIVOX uses a unique single-chip
signal processor and an exclusive non-li-
fieai patiern matching algorithm to do
speech recognition This gives relrable op-
eration ai low cost- In fact, the perfor
mance of COGNIVOX m speech recognc-
tion IS equal or better 10 u^nits costing
many times as much.
For voice oulpul, COGNIVOX digitizes
and Stores Ihe voice ol Ihe user, usirig a
data compression algofithm. This method
offers lour major advantages: First there
are no restrictions to the words COGNI-
VOX can say II a human can say it. COG-
NIVOX will say It too. Second, it is very
easy to program your favcme words. Just
say mem m trie micraphone. Tturd. you
have « choice of voices: male, lefnaie. chlJd,
foreign. Fourth and fofemDSL COGNIVOX
sounds wery, very good Nolhing in the
markei today can even come close to the
quality ol COGNIVOX speech output. You
can verify th^s yourself hy calling us and
asking to hear a. COGNIVOX demo over
the phone. Hearing is believing,
A COMPLETE SVSTEM
COGNJVOX comes assembled and lesh
ed and it includes microphone, software,
power suppl)*, burit in Speaker/amplifier
and extensive usei manual. All you need
10 gel COGNIVOX up and running is to
plug Jt in and load one of Ibe programs
supptied-
i\ is easy to wrue your own talking and
listening programs Too A single slate-
meni in BASIC is all that you need to say
o[ recognise a word. Fuil instructions on
how to do It are given m the manual
COGNIVOX mode! VIO'1002 will work
with all Commocore computers with at
least 16k of HAM, Model VlO-1003 re-
quires a ABk APPLE II > with 1 disk dnve
and DOS 3.3
ORDER YOUR COGNIVOX NOW
Call us at (BQb] 68^-1854 between 9anrt
and 4pm PST and charge your COGNIVOX
to your credit card or order COD. Or send
us a check in the mail, specifying your
computer. Price for either model of COG-
NIVOX IS $295 plus $4 shipping in the U.S
(foreign add 10% we ship AIR MAIL).
VOICETEK
P.O. Box SU.Oolet*. CA 33116
VIC-20
VlC-20 INTERFACING BLUE BOOK
Did you Know that your VIC can be used
10 control a 994 toy motor so ef^eGtlve^y
that it runs Jike a precision machine? Or
that you can make viC talk with an inter-
lace you can but td at a total parts costs of
uf\der i^^
These and other 18 interfacing projects
selected for ease of construction and low
cost are detailed in the VIC-20 Interfacmg
Blue Boolt a veritable gold mine of practi-
cal inrormationon how to ouild interfaces
lo sense levels, dial telephoneSn delect Ih
Quid levels, control lights, do AJD and OiA
conversion and many more.
V^ritlen by a co!ie|ie professor m a
friendly and easy going style, the Blue
Book gives you theory of operation, sche-
matics, program listings, parts lists, con-
struction hints and sources of materials
lor each one of Ihe 20 projects.
II you want to gef the most out of your
VIC this book is a must. Cost is $14.95
(less than 75e per project!).
WORD WHIZ
Here is a no inlis word processor ihal
does Ihe job and is so smaN it leaves plen-
ty of memory for your text. Yet It offers
lull screen editing and easy save of woj^k
in progress. This pocket rocket does it by
taking advantage of VIC'S buill-in text
manrpulaiion capabilities. It delivers out-
standing perlormance for letters and
srton manuscripts (up lo 10 pagesj
WORD WHIZ IS all that is likely lo need
for word processing in your VIC and costs
only S14.9S.
At>cve prices include postage in the
US. CA res. add 6% tax. Foreign add S2.
micrDEignal
900 Embarcadero Del Mar, Unil A
Goleta. CA 93117
40
COMPUTEI
Julv,19B2, Issue 26
With versions of this excellent game for PET/CBM
Microsoft and Atari B ASICs, this should provide hours
of amusernent. It will run on computers ivith 8K or more
of RAM tnemo)y.
Maze Race
possible joystick values, positions, and screen move-
ment offsets:
Mike Peterson
Cheyenne. W/
I was impressed bv the Maze algorithm that ap-
peared in COMPUTE!. December, 1981, #19. After
watching the maze form several times, I had an
idea for a program that incorporated the maze
algorithm.
First, I modified tlic routine so tliat two sym-
metrical mazes \vould be formed. One starts in the
upper left corner of the screen while the other
starts in the lower right. By POKEing a 32 ($20) in
the center of the screen, identical (hut opposite)
mazes are formed. As one goes left, the other goes
right. And as one goes down, the other goes up.
This continues until the screen is full and the al-
gorithm completed. The mazes arc ilien linked
together in the screen's middle and a "target"
character is POKF.d in the center.
Now, depending upon yoin- choice of options
during initialization, you race against a human
opponent (or the computer) to the center of the
maze. If you select the two-player option, 1 strongly
recommend the use of joysticks. The program will
process both player's joystick input during each
cycle. On the keyboard, one player can prevent the
other's input by holding a key pressed.
Willi the one-player version, you will always be
on the right and use the rightjt)y.siick or the number
pad to control your movement. The computer will
not begin imtil after your first input. Since the
computer doesn't know the best path to follow, and
strays down dead-end paths, it is easy to beat. My
daughter loses just often enough to keep her
interested and make each game a new challenge.
Through experimentation with the joysticks, I
found that the left joystick .sets the high four bits
and the right joystick sets the low I'our bits of the
byte at address 5947 1 ($E84F). The byte. A, can be
separated into a left yalue and a right value with :
A= PEEK(59471) : L= (A/16) AND 15 : R= A
AND 15. If both joysticks are in the same position,
L = R. An array with 1 5 elements can be used to
determine the new position of each player, move
there if not off the screen, and then erase the
previous position. The following table shows all
LorR
POSITION
OFFSET
0
not used
0
1
left/button
-1
2
right/button
+ 1
3
button
0
4
not used
0
5
left/up
-41
6
right/up
-39
7
"P
-10
8
not used
0
9
left/down
+ 39
10
right/down
+ 41
11
down
+ 40
12
not used
0
13
left
-1
14
right
+ 1
15
center
0
Note: with the button pressed only the
row can be determined.
Another feature of this program is the
"flipping" of the marker that arrives in the center
ol the screen's maze first. This is performed by
XORing the byte in the center screen address with
1 28 ($80). The result of an XOR with 128 is that
RVS characters become normal chaiacters and vice
versa.
Since BASIC doesn't provide us with an XOR
function, I consulted a Boolean Algebra text and
found the AND, OR, and NOT gates used to pro-
duce the XOR truth table. In BASIC, XOR would
be this : Y= ((X AND (NOT 128)) OR ((NOT X)
AND 128)).
Program 1. Atari Version
Atari Notes
After the dual maze has been generated,
select the niunber of players (player vs.
computer or player vs. player) by pressing
SELECT. When readv to play, press
START. To re-start the game, press
START. Use joysticks plugged into jacks
one and two to play.
108 REtl tn HAZE RACE Uif-
110 REt1 tU Himi UERSION tn
120 DIM A<3)^RE11 SET UP DIRECTION ThELE
1 30 A( 0 >=2 : A( 1 .>=-8e : H( i )=-2 • A< 3 )=80
140 WL=128 ^ rt.=0 ■■ SC=PEEK( 3S H25G$PEEKC 89 ;■
:(^SC+43:C=3C+877
150 GRAPHICS G = POKE 752. 1 = SET COLOR 2..T[HT
(lb:^RHD-;e)).4^P0KE 712.PEEK(710)
160 FOF; 1=1 TO 23
Turn To The Future
With COMPUTE! Publications
The Beginner's Guide To Buying
A Personal Computer
A Novice's handbook of useful, helpful in-
formation designed to teach you the basics
of evaluating and selecting a personal
computer. Written in plain English
for the interested beginner.
Complete with personal com'
puter specification charts and
buyer's guide. Applicable to
home, educational, and
small business buyers. ISBN
0-942386-03-5.
Paperback. $3.95.
COMPUTERS
First Book Of
Atari
192 pages of useful, in-
formative applications
and programs from
COMPUTEi magazine issues
now out of print, Includes
previously unpublished infor-
mation including Memory Map.
Contents include such articles and
programs as "Adding A Voice Track
to Atari Programs," "Designing Your
Own Atari Graphics Modes," and "Inside
Atari BASIC," Spiral bound for ease of access
to listings. For Beginner level to Advanced Atari
users. ISBN 0-942386-00-0. Paperback. $12,95,
Inside Atari DOS
From the authors of the Atari Disk
Operating System, on exciting step-by-step
guide to the DOS software. Complete
istings of commented source code
and detailed explanations of each
module of code. Author: Bill
Wilkinson, Optimized Systems Soft-
ware, Inc. Spiral bound for ease
of access to listings. For Inter-
mediate to Advanced Atari
Users. iSBN 0-942386-02-7.
Paperback. $19.95
COMPUTEI's
First Book Of
PET/CBM
256 pages of Commo-
dore PET and CBM articles
from COMPUTE! magazine
issues now in print. Includes
such classic articles and
programs as "Feed Your PET
Some Applesoft," "Disk Lister:
A Disk Cataloging Program,"
and "Cross Reference For The PET."
Spiral bound. ISBN 0-942386-01-9.
Paperback. $12.95
COMPUTE! Books
invites dealer inquiries. Call the Toll
Free Number below for Dealer Information.
COMPUTE! Magazine
A Monthly encyclopedia of informative applications articles and programs. COMPUTE! features articles, programs,
and columns covering the spectrum of home and educational computing. Monthly reviews, complete BASIC
and machine language listings of games, utilities, applications such as "Programming Your Home Insurance
Inventor/," "Real Estate Investment Analysis," "Telecommunications: How To Use A Modem," and much more.
Written for children and parents, educators, novices to advanced programmers. Principal editorial coverage is
Atari, ApfDie, Commodore PET/CBM, and VIC-20. Editorial coverage is expanding to include TI-99/4A Sinclair ZX-81,
and Radio Stiack Color Computer. Latest issue: 224 pages.
Mail to: COMPUTEI Publications, P.O. Box 5406, Greensboro, NC 27403 USA
COMPUTE! MAGAZINE
My Computer Is;
□ Commodore nosi
□ Radio Shack
Co lor Computer
□TlW/dA
□ other
PET/CBM
□ VtC-20
□ Apple
□ Atari
□ AIM
□ Don't yet have one
For Fastest Service
Call Our Toil-Free
US Order Line
800-345-S112
In Pennsylvania Call
800-662-2444
□ $20.00 One Year US Subscriplion □ $25.00 Canada and Inf I Surface Mail
□ S36.00 Two Vear US Subscription □ S38,00 Europe Air Delivery (Foreign
□ $54.00ThreeYearUSSubscripHon orders must be pre-paid in US Funds)
□ Poyment Enclosed nviSA □MasterCard □ Americon Express
Acct. No. ii<Eill5 '
Name
Address
City
state
ap
Country
COMPUTE! Books
For fastest service, in tlie US call Toll Free 800-334-0868.
In NC call 919-275-9S09.
Price Shipping/Handling
QuanlHy
Beginner's Guide S 3.95 eo. +
first Book of Atari 12.95 ea, +
Inside Atari DOS 199Sea +
First Book of PET/CBM 129560 +
$1-00eo,
2.00 ea.
2.00 ea.
2.00 eo,
Totol
All orders must be prepaid (money order, check or charge). All payments
must be in US funds, [Oulsid© the US odd $4.00 shippinng ond handling for oir
moil, S2.00 tor surface moil.) NC residents add 4% sales fox.
□ Payment Enclosed □ VISA □ MasterCard □ American Express
Acct No. Eifpires /
Nome
Address
gh_
state
J!e_
CountTy
Allow 4-6 weeks for cleli^erv- Foreign surfoce delEVBJy 2-3 FDonttis
AT API Is a registered trademark of Atori. Inc PET and CBM are trodemoiVs of Commodore Business Machines. \nc.
42
COMPUTEI
July. 1982, Issue 26
170 F-RINT "I
1"
130 HEKT I
136 ^B\ G&CRATE THE HAZE!
280 POKE A; 5: POKE C. 2^ POKE SC+499.HL
210 J=IHT(Rmc:0>*4)^X=J
220 B=H+H(J)^D=C-H<J)aF PEEK(B)<>WL THE
N 240
230 P»;E B^J+l^F-OKE D.-J+l^POKE A+INT(A(J
X2 ':>,H.- P0^::E C-I NT( A( J ;<--2 ) . HL ■ H=B ■ C=D ■ GO
TO 210
240 J=<J+n:i;(J<3)=IF JOX THEN 228
250 J=PEEK(A;':POKE h.HL^POKE CHL^F J<5
T>EH A=H-HU-l)^C=C+hf;j-l):GClO 215
260 A=SC+43 ■■ C=SC+S77 ■■ .J=2
270 POKE A.S4:P0KE Cill^POKE SC+459.10:
POKE SC+4b0.,HL = PuKE SCMSx.HL
280 DIM ntl5:J = F0R 1=9 TO IS^nC I >=0:HEXT
rNF'=0
290 tK 1 4 >=-40 ^ ri( 13 >=4y ^ M( 11 >=- 1^ H( 7 )= 1^ h
<10>=-41:rK6)=-35
300 \t 9 :>=39 ■■ W. 5 >=41 ■- PLR= 1
310 Din t1S$(£0>^t1SI="rfeze F:dce"^FOR 1=1
TO LEHCnS$>^ POSITION 8.1+5:? MS*(I..I>:^E
;<T I
320 POSITIOH 9.23^? "0^-|8 Plnyer L.te. CoiTip
titer";
330 K=PEEK( 53279 )aF K=7 THEN 338
340 IF K=PEEK( 53279) THEN 348
350 IF K=6 THEN 4®
368 IF K=3 THEN 338
370 t-P=i-NPaF i-f-d THEN 328
388 FUSITim 9..23:? " Player Us. Plia^r
390 GOTO 338
400 F1R=1-PLR
418 IF PLR=0 OR hP THEN 448
428 B=A+INT(A(J>/2):Y=PEEK(B)aF V=HL OR
V=10 1\£H PDK;E B,.34:PCKE h..HL:h=B^J=(.J+
2M*(j>i;i
430 J=(J-1H4S(..1=0>:GOTO 488
440 IF PLR ThEH 478
450 D=C+n(STICK(PLR>>aF PEEK(D)=HL OR P
EEKc: 0 )=10 Tb£N FiJKE D.. 1 1 1^ POKE C . HL ^ C=D
460 GOTO 486
470 B=A+f1<3TICK(PLR)>aF PEEK<B>=HL OR P
EEK'::B>=18 then P0K;E B, 84: POKE H.HL:H=B
480 F£M 3»E0h€ WON
490 IF ROSC+459 AND COSC+459 THEN 486
500 P=PEEK(SC+459>-Ff=0
510 FOR 1=1 TO 50: POKE Si>459.P+123^::F'F = P
F=l-Ff:HE:KT I
520 REM
530 IF C=SC+459 THEN 568
540 IF HP T>B4 POSITION y..23:? " Play
er- 2 tJon! "i ^QJTO 580
550 POSIT I»l 9/23 ■■•? " I WIN!
";:GuTO 580
560 IF \P T^EN FnJSITION 9.23^7 "
r 1 tkri ! "}■ GOTO 588
570 POSITION 9,23:? " You win!
II .
i
580 IF PEEK( 53279 K>6 THEN 588
590 RUN
PI iae
If you want to make Maze Race (for Aiari)
more challenging, add tlie following lines.
They cause the screen to blank out during
the maze generation, preventing a "sneak
preview." A .side effect is liiat this decreases
the time necessary to generate the maze:
155 POKE 559,0
325 POKE559,34
Program 2. Microsoft Version
10 REM *** MAZE RACE ***
20 REM * MIKE PETERSON *
30 REM ** CHEYENNE, WY **
40 REM
50 REM MAZE GENERATOR BY CHARLES BOND
60 REM COMPUTE! : DECEMBER, 1981
7 0 REM
30 GOTO120
90 POKE167,0
100 GETZS:IFZS=""THEN100
110 PRINTZ$:Z=VAL(Z$} : POKE167 , 1 :RETURN
120 PRINT" {CLEAR} {05 DOWN} " : PRINTTAB ( 15) "MA
ZE RACE{02 DOWN}"
130 PRINTTAB(5) "HOW MANY PEOPLE ARE PLAYING
?{LEFT} "; :GdSUB9 0:NP=Z-l: PRINT
140 IFZ>2THENPRINTTAB(5) "SORRY, ONLY 2 CAN "
PLAY. {DOWN} ":GOTO130
150 IFZ=0THENPRINTTAB(5) "PLEASE ENTER 1 OR ~
2.{DOWN}":GOTO130
160 PRINTTAB(7) "ARE YOU USING JOYSTICKS ?{L
LEFT}"; :GOSUB90:PRINT
170 IFZ$="Y"THENJJ=1 :GOTO190
180 IFZ$<>"N"THENPRINTTAB(7) "PLEASE ENTER Y
OR N.{DOWN} ":GOTO160
190 IFNPTHENPRINT" {DOWN}LEFT PLAYER = Q :RI
GHT PLAYER = W":GOTO210
200 PRINT" {D0WN}I AM THE Q :YOU ARE THE W"
210 IFJJTHENPRINT" {DOWN}USE THE JOYSTICK TO
MOVE AROUND" :GOTO250
220 IFNPTHENPRINT" {DQWN}Q USES W FOR UP, A F
OR LEFT,D FOR RIGHT,"
230 IFNPTHENPRINT"AND X FOR DOWN."
240 PRINT" {DOWN}W USES 8 FOR UP, 4 FOR LEFT,
6 FOR RIGHT, AND 2 FOR DOWN."
250 PRINT" {DOWNJPRESS ANY KEY TO BEGIN *{LE
LEFT}"; :GOSUB90
260 DIMM(255) : JS=1 51 : IFJJTHENJS=59471 :G0T02
90
270 M(18)=40:M(42)=-l:M(41)=l:MC50)=-40
280 M(24)=40:M(48)=-1:M(47)=1:M(56)=-40:GOT
0300
290 M{7)=-40:M{11)=40:M(13)=-1:M(14)=1
July, 1982, Issue 26
COMPUTEl
43
3 00 DIMA{3) :A(0)=2:A(1)=-80:A(2)=-2:A(3)=80
:WL=160:HL=32:SC=327 68
310 BL$="{REVl
[OFF}"
320 A=SC+81:C=SC+917
330 PRINT" {CLEAR} " : F0RI = 1T023 : PRINTBL$ : NEXT
9,HL
B) OWLT
)/2,HL:
360
HL:IFJ<
340 P0KEA,4 :POKEC,l:POKESC+49
350 J=INT(RND{TI) *4) :X=J
360 B=A+A(J) :D=C-A(J) :IFPEEK(
370 POKEB,J:POKED,J :POKEA+A(J
(J)/2,HL:A=B:C=D:GOTO350
380 J=(J + 1) *-(J<3> : IFJOXTHEN
390 J=PEEK (A) ;POKeA,HL:POKEC,
A-A(J) :C=C+A(J} :GOTO350
400 POKESC+498,HL:POKESC+499,
HL:A=SC+81 :C=SC+917
410 POKEA,81:POKEC,87:J=2:K=2
420 PP=PEEK (JS) : IFPP=255THEN4
430 PP=PEEK(JS)
440 IFNPTHEN470
450 B=A+A(J)/2:Y=PEEK(B) :IFY=
KEB,81:P0KEA,HL:A=B:J=(J+
)
460 J=(J-l)-4* (J=0) :GOTO510
470 IFJJTHEN500
4 80 IFPP<>24ANDPP<>4 8ANDPP<>4 7ANDPP<
520
490 B=A+H{PP) -.IFPEEK (B) =HLORP
0KEB,81:POKEA,HL:A=B:GOTO
500 Q= CPP/16)AND15:B=A+M(Q) : I
EEK (B)=4 2THENP0KEB,81;P0K
510 IFJJTHEN540
HEN380
POKEC-A
4THENA=
42:POKESC+500,
20
HL0RY=4
2)+4*(J
2THENP0
>1
EEK (B) =
510
FPEEK (B
EA,HL:A^
>56THEN
42THENP
) =HLORP
B
FORTH
programmers:
COMPUTE!
is looking for
screens and
applications
articles,
5 20 IFPPO18ANDPPO4 2ANDPPO41ANDPPO50THEN
550
5 30 D=C+M(PP) : IFPEEK (D) =HLORPEEK (D) =42THENP
OKED,87:POKEC,HL:C=D:GOTO550
5 40 Q=(PPAND15) :D=C+M(Q) : IFPEEK (D) =HLORPEEK
(D) =42THENPOKED,87:POKEC,HL:C=D
5 50 IFAOSC+499ANDCOSC+499THEN4 30
560 FORI=0TO99:W=PEEK(SC+499) : X= (WAND (N0T12
8) )0R( (NOTW) AND128) : POKESC+499 ,X
570 NEXT
580 PRINT"ANOTHER GAME ?{ LEFT} "; :GOSUB90
590 IFZ$="Y"THEN320
600 IFZ$<>"N"THENPRINT"{02 UP}":GOTO580 C
A
ATARI {- ->
400 16K $319.00
400YOURSto32Kor48K CALL
800 (16K) 659.00
410 RECORDER 84.00
810DISKDRIVE 449.00
850 INTERFACE 169.00
830 MODEM 149.00
825 PRINTER 575.00
481 ENTERTAINER KIT 85.00
482 EDUCATOR KIT 125.00
483 PROGRAMMERS KIT 60.00
484 COMMUNICATOR KIT 309.00
Prices subject to change without notice.
Shipping extra. No tax out of state.
Ca. residents add appropriate taxes.
WE ARE AN AUTHORIZED ATARI SALES AND
SERVICE CENTER
COMPUTERTIME, INC.
P.O. Box 216
Kentfield. CA 94914
CALL TOLL-FREE
In California
800-227-2520
800-772-4064
~~Tht moM bmSTnng c]ullrn|c al ittt etmutf
o. Rubick's Cube'
HAS BEEN CRACKED!
SoliCub i
Comokaia computw Anilr>ii ird lolulko^t let •ibiliaiy in<tii> ctM^liyuialior
. Fai raiic«» & d^cvIi lUh* ■ 3-D imrnM^on ■ ftc^nd «ll>cli . Tru ffm* yOu uu ii. trv* mot* yOu ■iiiiik* it
Tha SoHCube kil (tnc) udino tlisk. CUM » ilocumenlaHod) $4Q. 95
U availabiB now lor CBMJPET" (40 column, »l loisi t5k| Irom
COMQU EST
For VIM S MC DtOms only call TOLL-FREE m nr.|
800-824-7888
(■n CA BOCMU! 777?!
and ask for Operator 348
Please add $2.90 for h&s par order, and indicate ROM and RAM.
271 E, C4in«lbac:k. 5uil« 1
PhtCMnix, Ati2on« BS012
TfllBphonfl 60^-264-0124
H
SPECIALS OR IHTE6RATED CIRCUITS
6502
745
10/695
50/6.55
100/6.15
65DZA/6512A
8.40
10/795
50/7.35
100/6.90
6520 PIA
515
1C'4,90
50/4.45
100/4 15
6522 VIA
6.45
10/6,10
50/5-75
100/545
6532
7.90
10/7,40
50/7.00
100/660
2114-L200
2.45
25/2.30
100/2.15
2114-L3Q0
2 25
25/2,10
100/2.00
2716 EPROM
5.50
5/5,15
1 0/4.80
2532 EPROM
9,90
5/945
1 0/8 90
611 6 Hitachi 2Kx8 CMOS RAM 9.90
5/9,45
10/8.90
4116-200 ns RAM
8 to 15
Zfifo Insertion Fofce 24 pin
Socket
2.00
S-lOO Wire Wrap Socket
2.40
A P Products 15% OFF
APHobbyBlox 15% OFF
MODEM SPECIAL $99
SIGNALMAN Mkl from Anchor Automation
DIRECT CONNECT Modem with RS232 CaDle and Connector
inclutJed Fully compaliftle with all Bell 103 modems. 0 10
300 bps. full duplen. frequency sWt keyed modulation, auto-
matic ANSW/ORIG selection, dnect connect, audible lone
carrier delecl indicator sell -contained taltefy powered
PET/CBM Version (Mkl P) S1 69
ATARI Version $99
COMPACK INTElllGENT TERMINAL PACKAGE SItS
Combines inletligent RS232 port liardware from cgrs Micro-
tech Willi EHS Intelligent Terminal sollware to allow you lo
connect any RS232 Modem to PET/CBI^
I1S232 MODEM - STAR
IEEE 488 MODEM - STAR
SALE SIZ8
SALE SI99
We carry Apple 11+ from
Bell & Howell
I &K RAM Card for Apple 95
fullFORTH+ fir Aprb II $75
A tulHeatured FORTH with edhancements. Conlorms to
FORTH Intefest Group standards
REVERSAL (Spracklen) 32K Apple 2B.00
Data Managef (Lutus) 24K Apple 40.00
Data-Grapti (Boyd) 48 K Apple 40.00
Apple II Usef's Guide (Ostxicnel 12 00
Introduction lo Pascal {SytKxl 10,30
Pascal Hanilbook (Sybex) 12.00
Musical Applications o1 Micros iCtiamberlin) 20.00
User Guide lo the Unix System 13
6502 Assembly Language SulKOiilines 1 1
PET Fun and Gairws 8
Qcommodore
CBM-PET SPECIALS ,„ ,,^
8023 Printer - 1 36 col, 1 50cps tj-directional (995) 775
8300DaisyWhf>el-40cpsbi-direclional (2250) 1750
8032 80 x 25 CRT. business keyboard (1495) 1 100
Super Pet (1995) 1600
8096 Board (extra 64K RAIi* lor 8032) (500) 400
8050 Dual Disk Dnve- 1 megabyte (1795) 1345
8250 Dual Disk Dnve - 2 megabyte (2195) 1750
CBM IEEE Modem (395) 199
4016 full si2e graphics keyboard (995) 795
4032 full Si2e graphics keyboard (1295) 999
4040 Dual Disk Drive - 330.000 byles (l 295) 999
2031 Single Oisk Drive - 165.000 Oyles (695| 550
4022 Tractof Feed Printer (795) 630
C2N External Cassette Deck (751 65
Used CBM/PET Computers CALL
WE WILL MATCH ANY ADVERTISED PRICE
*** EDUCATIONAL DISCOUNTS ***
Buy I PET/CBM Computin ncihig 1 FflEE
PETSCAN I
$345 base price.
AIIOAS you 10 connect up lo 20 CBM/PET Computers lo
shared disk drives and printers Completely transparent lo the
user Perfect (or schools or multiple word processing con-
figurations Base conliguialion supports 3 computers
VIC 20
VIC 1515 Printer
VIC 3K RAM
VIC 8K RAM
VIC 16K RAM
VIC 1540 Disk Drive
VIC Invaders
VIC Jupiter Lander
259
335
36
54
112
500
24
24
VIC Superslot
VIC Super Alien
VIC Maze in 3-D
VIC Cosmic Debfis
VIC Amok (UMI)
VIC Snakman
VIC Rubiks Cube
VIC Night Ricjer
TNW 1000 Serial Interlace
TNW 488/103 with DAA
Compute's First Book of PET /CBM
WordPro 3 Plus ■ 32K CBM. disk, printer
WordPro 4 Plus ■ 8032, disk printer
VISICALC for PET ATARI. Of APPLE
SM-KIT ■ PET 110 M UHllllu
Programmers Toolkit - PET ROM Utilities
PET Spacemaket II ROM Switch
2 Meter PET (o IEEE a IEEE lo IEEE CaMe
Oust Cover lor PET
tEEE-Parallel Printer Interface tor PET
fEEE-RS232 Printer Interlace foe PET
The PET Revealed
Lbrary ol PET Subroutines
24
24
12
9
17
13
13
11
"TT6
450
11
195
300
190
4Q
35
36
40
B
110
120
12
12
4 PART HARMONY MUSIC SYSTEM tor PET
The Visible Music Monitor, by Frank Levinson, allows you to
easily enter, display, edit and play 4 part hamiony music.
Includes whole notes thni 64ttis (with dotted and triplets),
tenx» change, key signature, transpose, etc. Tbe KL-4M
unit includes D to A converter and amplifier ready to hook to
your speaker.
KL-4M Mule tnii wHt VMM fn%nwi SBO
DISK
SPECIALS
SCOTCH (3M) 5" 10/245 50/235 100/230
SCOTCH (3M) 8" 10/260 50/245 100/240
WE STOCK VERBATIM DISKS
Try the new Verbatim Head Cleaner Kits
BASF 5" or 8" 10/200 20/195
Wabash 5"
Wabash 8"
1 0/2 00 20/t 95
10/200 20/195
100/1.85
100/1,85
100/1 85
WE STOCK MAXELL DISKS
Diskette Storage Pages 10 for 3 95
Disk Ubrary Cases
Disk Huh Rings 8"
8"-
• 50 la 7.50
285 5" -215
5" - SO ^ 6 00
CASSETTES -A6FAPE-611 PREMIUM
High outpuL low noise. 5 screw housings.
C-10 10/.56 50/50
C-30 10/.73 50/68
100/-48
100/.66
SPECIALS
ErSON MX-tO Prtitir
EPSON MX-tQ F/T Pilitir
EPSOK MI-TO Priitv
EPSONMI-IOaPrMir
Centronics 739 Printer with dot graphics
STAnwniTEH Dilsy Wliiel Priiiter F1 0
Zenith ZVM- 121 Green Phosphor Monitor
DC Hayes Smartmodem
Watanabe Intelligent Plotter 1195
BMC BMI2A Green Phosphor Monitor
BMC BMI400BLUC 13" Color Monitor
BMC RGB 1 3" Color Monitor
POWERMATE Multiple Outlet Power Stnps
ISOBAR Isolated and Filtered Outlet Slnps
6-Pen
440
540
300
695
575
1445
119
230
H45
99
285
329
ALL BOOK Hd SOFTWARE PRICES DISCOUNTED
Synertek Systems
SYM-I Mlcncomputer SALE 199
SYM BAS-1 BASIC or RAE 1/2 Assembler 85
law- 2/80 Synertek Video and Keyboard 349
KTM-3/80 Synertek Tubeiess Temiinal 385
TM/iWf
data
systems
Z90-80 64 K
Z90-82 54 K. 1 double dens, drive
Z89-0 48K
Z89-1 48K. 1 drive
Z67 10 Megabyte -I- Floppy Drive
Z37 1.3 Megabyte Dual Floppy
Z25 High Speed Printer
Z19 Video Terminal (VT-52 compatiblel
ZVM-121 Green Phosptw Monitor
All Zenith Software discounted
2170
2395
1950
2150
4495
1495
1195
695
119
ATARr
SPECIALS
800 Computer
400 - t6K
810 Disk Drive
825 Printer
850 Interface
Inside Atari DOS
Paddle Pair
Joystick Pair
16KRAM
32K RAM
Pilot
Wnle for
675
330
440
629
170
18
19
19
69
99
68
Mcrosoft BASIC
MISSIU CDMMAIID
ASTEIOIOt
STAI (tIDEPS
Space Invaders
Music Composer
MODEM fur Atirl
Super Breakout
PAC-MAN
CENTIPEDE
First Book of Atari
'2
32
32
37
32
45
'99
30
36
prices on other Atari items
252 Bethlehem Pike
Colmar. PA 18915
215-822-7727
A B Computers
WRITE FOR CATALOG
Add S 1 .25 per order for shipping. We pay balance of U PS surlace
cfiarges on all prepaid orders. Prices listed are on cash discount
basis. Regular prices slightly higher Prices subject to change.
KMMM Pascal for PET/CBM
$85
A subset of standard Pascal witli extensions.
• Mactiine language Pascal Source Editor wi!tj cursor
oriented window mode
- Machine Language P-Code Compiler
- P-Code to mactiine language translator for optimiied
object co()e
- Run-time package
- Floating point capability
- User manual and sample programs
Require 32K Please specify cwligoralion.
EAflL for PET (disiTfile based) $65
Elltir, AuMiWir, Ritocitir, Uikir
Generates relocatable object code using MOS Tectinofogy
mnemonics. Disk file input (can edit files larger Itian
memoryj. Links .multiple object programs as one memory
load, Ijsting output to screen or printer. Enfianced editor
operates in botfi command mode and cursor oriented
"window" mode
RAM/ROM
for PET/CBM
4K or 3K bytes of soft ROM with optional
battery backup.
RAM/ROM is compatible with any large keyboard machine
Plugs into one of the ROM sockets above screen memory to
give you switch selected write protectable RAM.
Use RAM/ROM as a software devetopmenl tool to store data
Of machine code beyond the normal BASIC range. Use
RAM/ROM TO LOAD A ROti^ image where you have possitile
conflicts with more than one ROM requiring the same socket-
Possible applications include machine language sort (such as
SUPERSORT). universal wedge, Extramon. etc.
RAM/ROM - - 4K $85
RAM/ROM --aK 120
Battery Backup Option 30
SUBSORT by James Strasma $35
Subson is an excellent general purpose machine language
SCTt routine for PET/CBM computers. Sorts both one and two
dimensioned arrays at lightning speed in either ascending or
descending order Other fields can be subsorted when a match
is found, and fields need not be in any special order. Sort arrays
may be specified by name, and fields are random length
Allows sorting by bit to provide 8 categories per byte. The
routine works with all PET BASICS, ad|usts to any memory
size, and can coexist with other programs in high memory
SuperGraphics 2.0
NEW Version with TURTLE GRAPHICS
SuperGraphics, by John Fluharty, provides a 4k machine
language extension which adds 35 full featured commands lo
Commodore BASIC lo allow fast and easy plotting and
manipulation of graphics on the PET/CBM video display, as
well as SOUND Commands. Animations which previously
were too slow or impossible without machine language
subroutines now can be programmed directly in BASIC Move
blocks for focketships. etc.). or entire areas of the screen with a
single, easy to use BASIC command Scroll any portion of the
screen up. down. left, or nght. Turn on ot oft any of the 4000
18000 on 8032) screen pixels with a single BASIC conmand
I n high resolution mode, draw vertical, horizontal, and diagonal
lines. Draw a box. fill a box. and move il around on the screen
with easy to use BASIC commands. Plot ounces using either
rectangul ar or polar co-ordinates (great for Algebra, Geornetry
and Trig classes.!
Tbe S 0 U N D commands allow you to initiate a note or series
ot notes (or even several songs) fiom BASIC, and then play
(hem in the background mode without interfenng with your
BAS 10 program. This allows your program to njn at full speed
with simultaneous graphics and music.
Seven new TURTLE commands open up a whole new
dimension m graphics. Place the TURTLE anywhere on the
screen, set his DIRECTION, turn him LEFT or RIGHT, move
him FORWARD, raise or lower his plotting pen, even flip the
pen over to erase Turtle commands use angles measured in
degrees, not radians, so even elementary school children can
create fantastic graphic displays.
Specify machine model (and size). ROM type (BASIC 3 or 4)
SuperGraphics (disk or tape) S 40
SuperGraphics in ROM 55
Volume discounts available on ROM version (or schools.
fir PET/CIM CiMpftirt
Self Caiculaiing
DATA BASE
HEPORT WRITER
MAILING LIST
FLEX-FILE IS a set of flexible, friendly programs to allow
you to set up and maintain a data base Print files with a
versatile Report Writer or a Mail Label routine Pro-
grammers will find il easy to add subroutines lo their (wn
programs to make use of Data 8ase files.
RANDOM ACCESS DATA BASE
Record size limit is 250 characters. Tlie number o( records
per disk is limited only by the size of each record and tfw
number of records per disk is limited only by the size of each
record and the amount of free space on the disk File
maintenance lets you step forward or backward through a
file. add. delete, or change a record, go lo a numbered
record, or find a record by specified field The Find command
locates any record when you enter all (or a ponioo of) the
desired key Field lengths may vary from record to record to
allow maximum packit)9 of information Files may be sorted
by any field, and any field may be specified as a key.
Sequential files from other programs may be converled (o
Flex- File formal, and Flex- File records may be converted to
sequential (WordPro. PafierMate, other word processors
may also use Flex-File data). Maximum record size, fields
per record, and order of fields may be changed at any time.
MAILING LABELS
With typical record size of 127 characters, each disk can
handle over 1 000 records (about 2800 with 8050 drive).
Labels may be printed any number wide, and may begin in
any column position. Tliere is no limit on the number or order
of fields on a label, and two or three fields may be joined
together on one line (like first name, last name, and title). A
"type of customer' fieid a))ows se)ective printing.
REPORT WHITER
Print any field in any column. For numeric fields, use
decimal point justification (and round to any accuracy).
Define any column as a series of mathematical functions
pefformed on olher columns. These functions include
arithmetic operations and vanous log and trig functions.
Pass results of operations such as njnning total from row to
row At the end of the report, print total and/or average for
any column Complete record selection, including field
within range, pattern match, and logical functions can be
specified individually or in combination with other
parameters
FIEX-FILE BY Michiel Riley S80
Please specify equipment configuration when ordering
COLOR CHART ColOf video Board $125
Up to 8 colors and high resolution graphics ( f 28 x 192 in 2
colors) Generates composite video tor use with monitor
PEDISK II from cgrs Microtech
5" 40 track. 1 drive, 143K S525
5" 40 track, 1 drive, 286 K 690
8' IBM 3740 formal 77 track. 250K 995
PROGRAM YOUR OWN EPROMS
Bfnidlag Inn f«r PET/CBM S79
EPROM Programmer with software for all ROM versions
Includes all hardware and software to program or copy
2716 and 2532 EPROMs
PORTMAKEn DUAL n$Z32 SERIAL PORT G3
Two ports with lull bipolar RS232 bulteimg Baud rates from
300 to 4800 For PET.iCBM. AIM, SYM
cm Sittnn
Legal Time Accounting Package
Medical Accounting Package
Dow Jones Portfolk) Management
Personal Tax Calculator
Wordcratt 80 Wordprocessor Package
Pascal Development Package
Assembler DevetopfBo' Package
Intelligem Temiinal Emulator
Soflpac-1 (Competitive Software)
445
129
65
325
235
99
30
29
FORTH for PET
BY L C. Cargile and Michael Riley $50
Features include;
full FIG FORTH model,
all FORTH 79 STANDARD extensions.
stmctured 6502 Assembler with nested decision making
macros-
full screen editing (same as when programming in
BASIC).
auto repeat key.
sample programs
standard size screens (1 6 lines by 64 characters).
1 50 screens per diskette on 4040, 480 screens on 8050.
ability to read ar^l whte BASIC sequential files.
introductory manual.
reference manual
Runs on any 16K or 32K PET/CBM (including 8032) with
ROM 3 or 4. and CBM disk drive. Please specify configuration
when ordering
Available soon.
Metacompiler for FORTH $30
simple metacompiler for creating compacted object code
which can be executed independently [without the FORTH
system).
PaperMste
60 COMMAND
WORD
PROCESSOR
by Michael Riley
ftB a^
Paper-M ale is a full-featured word processor for C B M/PET.
Paper-Mate incorporates 60 commands lo give you full
screen editing with graphics for all f6K or 32K machines
(including 8032), all printers, and disk or tape drives
For writing text. Paper- Mate has a definable keyboard so
you can use either Business or Graphics machines. Shift
lock on letters only, or use keyboard shift lock All keys
repeal
Paper-Mate text editing includes floating cursor, scroll up
or down, page forward or bacK and repeating insert and
delete keys. Text block handling includes transfer, delete,
append, save, load, and insert
All formatting commands are imbedded in text for
complete control. Commands include margin control and
release, column adjust. 9 tab settings, variable line spacing,
lustify text, center text, and auto print form letter (variable
block). Files can be linked so that one command prints an
entire manuscript Auto page, page fieaders, page numbers,
pause at end of page, and hyphenation pauses are included
Unlike most word processors, CBM graphics as well as
text can be used Paper-Mate can send any ASCII code
over any secondary address lo any printef.
Paper-Mate (unctions with 16/32K CBM/PET machines,
with any printer, and with either cassette or disk.
To order Paper- Mate, please specify configuration,
Pipii'Miti on dlik or tapi 40.00
BAWiNTERPRETER '$200
Designed to support the CBM 8096 (8032 with add-on 54K
board) A fui I interpreter implementation to automatically lake
ad/antage of the extra memory available lo the 8032.
BriGninlLid|«r-8D3Z/aOSIl
BPI AttMiiti Hicilnble - 8D32/e050
BPI Invintsry- B03Z/e050
BPI Job CDltitig
BPI Piymll
300
JOB
300
300
300
JINSAM Data Base Management System
far CBM. Comprehensive version available for most
configurations.
Hilldii Sottnn
Complex Mathematics 12.70
Engineering Mathematics 12.70
General Mathemalics 12.70
MCAP:Circuit Analysis Program 21.00
Energy Miser 24.50
CASHITaMAGEMENT system S45
Easy to use Keeps Irack of cash disbursements, cash
receipts, cash transfers, expenses lor up to 50 categories.
252 Bethlehem Pike
Colmar, PA 18915
21 5-822-7727
A B Comiiuters
WnrTE FOR CATALOG
Add $1 .25 per ofder for shipping. We pay balance of UPS suriace
charges on all prepaid orders. Prices listed are on cash discount
basis. Regular prices slightly higher. Prices subject to change.
at
COMPUTEI
July. 1982, Issue 26
Test RAM
For Bad Bits,
Nondestructively
Leo J. Scanlon
Inverness, FL
In a recent article in this magazine (COMPUTi!,
April, 1981 #23) I presented a 6502 assembly
language program that tests the integrity of a
selected portion of RAM. That program was de-
signed to detect "dead" bits or bytes, pattern sensi-
tivity, crosstalk, and a variety of other error condi-
tions. It could also be used to detect soft errors, in
which the memory accepts the test data, but reverts
back to its previous state after some period of time.
As useful as it is, that program has one possible
shortcoming: it clobbers the contents of the portion
of memory being tested. Clearly, that doesn't matter
if you are just verifying a newly installed memory
board, but is unacceptable if a program or some
data is sitting within the test area. In this article, I
present another kind of program. i)ne chat per-
forms a nondcslrucfme test on RAM memory. That
is, a program that alters memory, but subsequently
restores all locations to their previous (pre-
test) values.
The Test Algorithm
Essentiallv, the lest program described here vali-
dates RAM by comparing the actual contents of
memory to the known data that should be contained
within it. To make this comparison, (be program
uses a method that is often employed for testing
punched paper tape and read only memories
(ROMs) — the clu'cksum. A checksimi is that value
produced by taking the exclusive-OR of all bytes in
test memory (see box).
Briefly, here is the sequence of operations for
the test program:
1 . Calculate a checksum value for the entire
range of test memory, by exclusive-ORing
all bytes,
2. Invert the stale of the ftrst bit in test memory
— Bit 7 of the "start" location — but leave all
other bits unchanged.
3. Calculate a new checksum value,
4. Invert the state of the altered bit position in
the new checksum.
5. Compare the new (altered) checksum with
the initial checksum.
6. The result of this comparison can cause
either of two things to take place:
If the checksums are different, the program
jumps to an error routine, to print out the
bit position and address of the bad bit.
If the checksums are identical, the program
restores the state of the test bit — by rein-
verting it — then branches back to Step 2, to
test the next bit (Bit 6 of the "start" location).
This process continues until all bits have been
tested, or until a mismatch is detected.
Will this nondestructive test program catch all
of the fault conditions that can be delected by the
previously published destructive test program?
Probably not all of them. The nondestructive test
program will nf)t detect pattern sensitivity or soft
errors (unless you modify the program to include a
lime delay), but it should be able to detect most
other types of errors.
Program Flowchart
Now that you understand what the test program
must do, and know hoxv the program will do it, it's
time to look at the structure of the program itself.
This program is comprised of three parts: a main
program loop, a checksum calculating subroutine
and an error printout routine.
A flowchart for the main program loop is
shown in Figure 1 . As you can see, this flowchart is
nothing more than a detailed version of the algo-
rithm we defined in preceding Steps I through 6.
The program begins by calculating the byte coimt,
then calls the checksum subroutine (CHKSUM) to
generate the initial value of the checksum. This
done, the base address and byte index are initialized
to reference the first byte in lest memory.
Next, the bit mask index is initialized to refer-
ence the most significant bit. Bit 7. With (his initial-
ization out of the way, the program inveits the
current test bit. The first time through the loop,
this will be Bit 7 of the Start location. Now the
Figure 1: Nondestructive Memory Test Program
( Start j
1
Byte count = End address -
Start addre^K + 1
1
CHKSUM
(Calculate initial
checksum)
\
■
Base address = Start address
It's hard to picture
all of DYNACOMP's software
GIN RUMMY
SHAPE MAGICIAN
CHF.SSMASTER
BLACK HOLE
MIDWAY
'p^^^m^^'
FOURIER ANALYZER
RINGSOFTHE EMPIRE
LEM LANDER
STOCKAID
HODGE PODGE
'%:f'.'-': ::'■:':::
FOREST FIRE
OUINTOMINOES
STARBASE3 2
GO FISH
CHECKERS 3 0
HODGE PODGE
TRIPLE BLOCKARD
CHOMPELO
TEACHERS AIDE
SPACE TRAP
STOCK MASTER
STOCK PLOT
BACCARAT
SUPER SUB CHASE
MAIL MASTER
VALDEZ(MAP|
STOCK MASTER
STOCK PLOT
851
GIN RUMMY
SPACE LANES
ESCAPE FROM
VOLANTIUM
BREAKUP
INTRUDER ALERT
PERSONAL FINANCE
SYSTEM
CRYSTALS
(C) 1982 PROMEDIA ASSOCIATES
TURN TO NEXT PAGE..
is
z
z
u
z
z
Z
z
DYNACOMP
*.
Quality software for*:
APPLE II Plus ALTAIR****
OSBORNE-1
NORTH STAR***
ATARI
PET/CBM
NEC PC-8000
TRS-80 (Level II)**
SUPERBRAIN*****
CP/M Disks/Diskettes
/See Availabilily bo;(\
VMBASlC/CBASrC/
CARD GAMES
BREDGI: MASTI^R (Avillabk rormll corapuKril Pilce:S;i.93 Ditkrttf
Hf" ■'I'm nVMA'ri:)MI"Pi BHIDOE : D. vuu ^iIlahwIuKlv lev<BKI[>GE MASTER. BRrDCf MASTER li a ccmprihtn
^i>c ^^dft pcvftun i3ni|n(il ID pfD^iCc Kauri Dr>[hAlJcii|]a|compciuI<iii. Eb^uti (uturci inclLidt ch« BUtli'KiMtl tanvtii'
II1M1. SiJ)rm«n confcmiah. p[(-c[r[>tivt a[KDin|i, uid (ic»|niEii>n tti CenuAd bidi tAd ijmp'thifi itifctita Aficf [iLipni ■
ipKlfif hj.ri*l. ]rIlU rui l«plJ:i ttu umrh.trtd, nlth ihropUOi df iwiCttuDg tlidiiariiri j'cni tonipjtrr (■ppanmti, thi).fulmc
illOBi )dL Id tDRigucr tour TideIeIiri fnd pii^iri itm 'o BKIPCE M<\STtR, Bonu»«t f«r tunc nniTwu &MI lUrru art
■•vd<4 *t in dijplicaie hxlft. Doubled ctinrKii uc inn'-cd tnxd upon ii nnuTuirr luifOEd ^Mincubilit) . A icatc cud u
dnptaccd ai the coitcluirchr of cKh hkiid. The teat cud dapLi]!! ■ laiinrcujy of loul CuAdi pli)^, i&ul pciiiii uored,
rLontwi cf iMQtricli ITL*lt 4.Rd iti. t^ ^ bid), mtde. BRlDCf VtASTEB h Ciocl) ihr Iml [onputri tnidp piiijrun
DVNA'COMF*'?i ptttmnf flltnX}E ID iuti.iimm mt^ cpiradc ia akltx^t MA^Tf K Icn i nwniatt chuir cF 13 W plui
poilMtc and handlinf Iw aTdtiinf. inTiitm«!^*> [i(M>
BACCARAT (AMii onlyH Price SLB.9S C»scllc/S22.4j DliJkcdf
TKii *i lis* Euii>pMn (wd liKnt wMtIn B ibr rifonii of ttw Modr Cwka ict Ki. Inumc wwicif •! ibr cvnuu Mbk wth OCT
loyoiii kli ■nd(jaUrinitr Lortmr rifhj: | f«rn cod pli> BACCADAT k row icsutc anihr Atui ConuiflnruUhLihinolu-
Iwn C¥>l«r Kipftci i»d miidiini Mund Ruru in lAK. KcquirEi one jojiiui
Pnce: S22.9i OiikrtH
at CIS RUMMY cuuag. The i::a<EputD' pji.j'i >a£cpiii£U'iAll> •mcl\^ ud iht
QIN RUMMY (Appk diiketic onlv)
IJki. [1 "bf bTM macro cionmnn mtpkeicnij:)!
HIFE^triplivi (It i4fptr& Wtui cIk m be lud?
POKER PARTY ( Av«il«bte Tor all rampuifffl pri«; *19,«5 CiH(IIe;$33.93 Diikdlc
POKES PARTY atiidci^ pain lun^iion bued in thf twA. POXER.b) Ot-tld Jacobi. ThiiatSMiridti lanpnAmiir
wiiMia<tiUt4t Tm RMi»A^MBt>uteti fta p«/ir nnunti pf iDurK^raod iti piiwt (enniM4cT)ptanT» E«.iiorir»ncr4im»
()mu «lU Id Id knm Ibrml rui ■ diTtnrnl imHMuliI} m <V l^rm et ♦ varTirf rrPTmta'F W bhifl M toid uttirt pmnn
PrKTKf '■uh POKER PAKTV MIcx tmni; r? thM npenu^c pirc loiuihi^ Apple uurtie iwd diilcric •eittani rt^mrt >
T2 K [or blfTT]! Anh M
Price: S14.9S Ciii<(EC'SI&.95 DkkMie
• frkMSI} conpuirr ^nh um inpuii ihii ue umpb nwufti fa
'nopio; bifJ] [EwJicioniri.phict'rwilMdriEUjiO'rKutdi Amuti
CO FISH |A«ii1ablc for ill coRiFWIcn)
fiO F15M n i «i«»M« <|!(W'm'i. did mtp* TV vppcntnt i
HiuRcfcildm loan}? mutfT- rbr Apptrmd Aun wwa
fa ctuiittc'' Runt m lAK
BLACKJACK COACH aZK THS-M onlyh Price: S29.9S C«lt«llc/SJ3.» DiAtUe
BLACKMCK (.'QACH rt boih AJtDUiad An«daC«i««*IC0Ol. Wilhlhb progt>Jh ii^umar qiuAUtlliirlr l«l ilandud and
tpK-kftl ^yiAl Uld bCllin|.in(tNsdi. includinl [he imni cUdannl icfifinn. Y.wi £)ui iiHnpl) plar. pUy ■■■ih rh* C0fnp<,fln W
■ «Da<h. DC iittKiKtllT ifil TBur nmhod nfiihr kHif run ■niomaiic p1*y All ihc KUdmj-d pl<rrr cbDK« irr uKluOcd: in-
luiKKT. ipliiiini piiii. double dosiiit ind turreiHhi (opuoniJl The conipiiEei uttl^ni ih( iK^inHjut utd pfCiaWt d^uiltil
lumnuiry ftpodi wlikh lUtntKlU)' p<rpiMm lh« i{r(fi|El:it and i>C*.kmni«i oS yimt pitj tkrti.'\ tjil fcui nisnry il Ihr la^ln
uncgl »tHl Kt<« {ilkiiitd «it» BLACKJA'flr: COAL'H'
THOUGHT PROVOKERS
MAN AGF.MENT SIMULATOR |Av»libl« far all compulersl Price: S25.95 Cuiclie
S39.95 Diikcllc
TT^it piBflttn it hclh ah ^udknl 'lUchihi IdoI u well u ■ dimulilJni inlcJJnlu^i larnc ^tntn^pqn iJTniWxunti pUft^ «■
fri<1ii4tr buiLn.ni M:>iufiii, rKhpiaref^ntimconltolimmpcrtTx'hii:}! manuliciuimi ihire ptodLru. ttchpliyn iiLccrpii
in □tiiptrtocTn hii conpditifri by miin| Kllini. pricxi. pcwJkKiior voltimn. mirieEini ud dcik(n tapendiiijiei ric The moit
ikKctutjl Utai il ikt (Hit laKh the ItlflMti HCKli ptiM vlun ittt lumuUiioD tfidi
PLIGHT SIMULATOR'(A<'AiiBblef«'KlUaniput«rs| Price: S19.9S Cuiciuj'llh<>5 Diiktiic
A (uLuK ind citciiinT mBthemuici] usijlwanoC uke-off. Elifbt uid lindui|. The ptnt^un utkUici HTDdjinjiniic r^uiEioni
Jind iltf -chutciettiEicii or ■ r««t titttal You cia pradice iniiniffleni tpprouh«i and lutttuioB. uiMf lUudL kAd conpati
hradiFifi Jtif svorv vd^vKfd ll>-rr (vn i&tKi prtf onn loapi. hair-rob uuEuErvkiir ^DO^wEsf TnAOfuvfn. Aflhovih Ihil pioflivi^
doniKiirniptoy cwfi*». n ue*citini Mdwrrywhtkuvt, S«ih< tori«»ff rfw* ioCOMPLTROMCS Kimi m l«( Awn
VALDEZ (Av*iUbk for «II wfiipuimt Priet S]7.fl5 C«trtwS2L9J Diikelle
VaLDE? ji i i:orrir>uir> i^njUiiahofiupn-EtAkti uii^Miutid ibc P^A:r'4diiunSdiibd''\ud«j Nuioiat i<tiMi df aUu*
|n(lvdeJ in thu iimilLalHn n • ic^M>[ 4n4 mcnun J5* ■ iM rioac"' nup. portKiin pf »hi(:li nuf hf iimd uiuii; E&e
Aip'i ilplwiuinttK r*6ti d;)rli> P'lt moihon or Ehc ifnj: FUrir 3» ccmiicJ> nwdtLlcd emibemukil;). Thr hhiuImwi; tlKi
Ecnujni 4 nodd Ich ihc lidkl Wll"''!' ^e. llK rtpon. ii ^cD u c4l»rlrafrK Iouliom|.tuikeri ind diltiii| Kcbei|i|. CtiAn
TOul touttt lEMtl rh« I'lult of AUliki IC Vktdtf UttMlP SMTM l^riWt leiMst IG KIScflvUe CiITk^M 4Ad PtftOAtl CiMI-
ptttini
BACKGAMMON 2.0 ( A^iilibk fvr til 'Compuiert) Prjcc:St9.9J CuulU/l2i.9J DItkciic
Thu pr.»vun Inli iidui b«:t.,|BninHH ikilji kad hJI *^ lAftfrvt jOkI fUM A hiiflUJ Cia COOpCU ICliUI 1 COnpuUT 01
■furttt Uh«hR iii'unun n>ccDEnpiKet ctne^cn ptif uuoir iiidf. EnvrThthwrwacr fltrwBipwtn'cwite'iM' w tcnWc
'die* rob. Baud poiktiont cxn be ciuinlar uvnl for rrpfa.^. BAClLCAMMOr^I.DpUpiBaanauce'mia ihtDlTKuliiiln
at bteifusoidA tAd It iiiT« lo proiid< otof fi^uiiuikm teuou af t»f fcuminon pUy
CHESS MASTER (Nonh Sim »Bd TRS-M oniyV Pri«:S19.9! C«*MneyS2i.9! Diskette
Thii temgitu wtd i^y poa-eiTiJ pcocrun ^rohidei Hoeindi ofpUj. It ind'jdia cxitfnf. en puioai opium cud^ ihe pmmo-
EiMi»fjMBAi AdddiOfudiT, EMbcudirur b<pfH4t ^Cfeih« tUJi of pby.poininiiailArrumuiuionof ''book" pli^ Je
■nuimur rit<;^lionLp«d. Ihrtvocruii » «ii1lni id uwinbtr tan|UH«E Ibf MHIWaRE SPECIALISTS dt CliltOfMI) FuU
ITI-P^iiCI 41? trntX^TrO in ll^e TR^-iiQ \^\aini, and l*Q iridlhi of afphununtnic dapEa^ -arv pra>-Hlcd le acicDtaniadalc Noflli
SEU lllttii S*# Ittttm III iMlCAfflpwILI^I
FOREST FIHEI 1 Auri «ilyl Price: SI 4.95 Ciiuih;SI I.9S DHk«tEe
Uunteicelkni iripliKi and KFuad'CfTKit. ihu timkiliiMMi plul^ rov « ibe mtddir '?f 4 fctru fat Y<nir lofa m |i dicrtiorwrj-
ijMti'to put otii the fire whiic eonpeuiuni Far ehisfaui '^lod. *"CidiE7 lod tririin. titst ptEXfciint^kluiblt iituciuiii cir
■null IB darilini prAalim LiE«4ik,r vi^ikblei Unprovided 10 nviteFOEirST FIRE'' ver> luipeauful kcd etiiIltni,iA|, Soi»d
|«nci k*vt iHr Hunr lerimj and Ihcie air J Icrcb of dif Fcuh).
BLACK HOLE (Apple onlj^> Price: 512.95 CjMcttc/Si9.95 Diikclie
t^ii It (n ciciEini iiiphical iira^UEion efilitpitibkiAi ioiolied inclouly otiurv1n(i.Uacl: tiok'feiihaipKepiDbe- TVob-
fKi iiEOfflin tnJfliataiaffl.roraprambeiUfrw, ancrWciosemanraJtbiMkliDt Ttmu mb« iEhi*>(d>iihciuiMfflin.|
to nru the Rnocniljf that the ildal itrcu deiiiori the probe, CcrUoE oI ihe erit\ n iFaliNii:«IET irmuiaini uiina luie ]fu foi
iiMaiHH andiTTiui^.ihfuiitr'i Im aMtkitikm Thittirotiain cmploi'iKi-Ilciirtphkiiiid ii cdueitianataiitfll arctialkTiimf
SPACE FVACUATIONI (Available fpr all compuiin) Price: 513.95 CMSClte/I]i.9S Diikcttt
Cm >oiicDlonur ihrialur ind rruiuie \ht Euih bttatrtht umtv-p\9^'' Yqu' (wnpiilf bnvirwt ihr Lhip'tCampuEei ai
you ritiatt lUt liMttttt 10 itiiKkK millioriii'dt pcoplr. Ttiii liunuUiian ll panKululy imereiii^isii iviicwnbirhn mutt oMhr
f itilkrii «kq>eri> ni 'cluiu ipacr lamii wiih ihr mytijiy entllentt or ADVENTURf.
MONARCH lAlifl Oftly> Pri«; S1J.9J C*iMiie/Sia.95 Dlikeite
'WtiNAftCH n a fUciMIiill; ecOAOtTiic imiLiLuion le^Luni^ yau to lurvjic tn S-jrCU IfTITV** VOW naiioo'i igaiiri You drier
muwihi; amount al kCTEatr dotted 1^ lOdutij'iiland tjrkcullunl ok. bow mtKfa feiod EO diiu-ibiiEt te ih< po^ian anf li-v*
matt iJiDuWibe tpmtonpollkitiomntrot. Vciuiii^M Findihat^dcciuMU mt'-aKtieompiaEiiuruid thitit i>noteu>iiaina):r
ctiOYOM hippy. Rum 1(1 IfrK Ann
CHOMPELO lAuridnlyl
(llflWptl O iiT<»lli rnochallmiiiiiiuTin
in| the poiwnrd p<?rEicfi Itvrothr fjinr » i
jnil 11 laid Id SriE ftini ptLkaft '•dl iLn or
Price: 514.95 Caiietic;SI8;.95 Ditkcnc
Id NIM: fOi muii bite off pui of ■ cookw, bui ivaMI tik-
ir KEVEttSI h fullT ui«t ihi Ala^'1'l tliphkCI upibtLt)',
AVAILABILITY
DVNAC^HrtP vJi*ttt H 'll^p^^(J wKh ocn^eie documcnKKTi dxninni do: npJanalKnt and eiK^i^ilFt L'nleu fcho'var
qKcdW. aS prDfrarna wil ran wKhf 16k 'prTjpvn rrenq*r >i»^ iATaRI ^tqintn. 24K) Eec^ wtien nood. pntpviti ve
iv».UWfnrATATll,PET,TTlS»(L^dIlL>reCafldApptafAppksDflic»sKnrind4iiriirat»dla«Ncr^
EckAMcikf«ii}i>aTif>UbtalA:ikrBE AiicroaP^.rnwi c*^)(r»Tti i;fcn be i**a=>nl™ ManiardllBAI ^'-iQkiAitf dtmrty. JmiHe
,knMl)cnTV«4^K»mai|]t^CP'MtVn>f,il»iifr«i,,u«minjnibni<^r^
Kealh>'ZeMhHdiiur>cElwni ^'^ CP M tJakfrtaije «^a:labkfi^ESe ^Q^0!iSl«^,5«fmflrllrtlAJO4^wm*ClWl(^lUTTiltc^nl
■ATAttlHtiCit*. NOtttHSTAH. CfM. MM OSHOHNE.S^JPtHBHAJ.v. NEC FC-WSH^XtltOI ■« .rfairr.-
"iliffpr vAf 'r •XHTiTd. «" JH^^" Mnirr J u^vr 4a omUa^lrani^aawDri'iHil^J^.f eA* TRS-aOMadd U^ EinrplW'
ClUBMCt, G«AFrX, CHESiMASrtfl. rHS-»a Ji«kfneifl«t!«iiip»B*d*>l»iell*fT|XXSiM-ffASrC
""Fbt AJiaii ivMtfn* fwvi*^ Ntcri>H/r B45'C
DYNACOMP OFFERS THE FOLLOWING
• Widest variety
• Guaranteed quality
> Fastest delivery
• Friendly service
• Free catalog
• Toll free order phone
AND MORE.
5TARBASE 1.2 (Aviilabk TiJt ■!! c«>nqHlcn) Price: St3,9S Cut4llt>SI 7.9J Diikcne
T%itiEneflatiK^>acciBmului[T>.i!ui>«hinFraincii'fr*tu7ri Foreniunple.UieCitrtlniniwthnr^Mthr ln>n:iblc»ii:tKiiji
ovnnf while iboiiuelirtiiUTbuciiiioiiicrquKlrKna T>ieCfoyhr[ialwana.Hi'aiiiitir>ih1i|>ii mdhrxvy trunenandmnc
■fVn ihra «l^T^e^Kuabeq a hnbcwhen (hi Invtndbh u taucpd b^' chfrc texvy ctuiun md i iiUrtiue SUS aiiueittir
The Crojtim ne! e>tal Stt ihe wrrurai^ (cvif-^ in A N.A LO G , SO SnAf-trr Critufve 4nd Genif MfTditrninffi*
LIL' MEN FROM MARS (AUri only) Price; 519,93 C«h«M/S2].95 Diiktdt
EtfTrnd rf'trKW nt lutk men tcooi Mm ■naiit to fct you if you doei'E let Lhcm Tltm. Thii ii t tidttasvt Mtti leidkiiLon
animaied tikolici [iicidel fame -wkicii ciBOta reuch ot ihe Aluri power. Rt^uiret 404' frjiikk.
SPACE TILT (Apple and AlRrt only)
U«< |he ■un4p«ddln to nti ihc plane crihcTVKmn to ^'i
hole I'm iDulln and unallci! A biihlt'in Iimec aUcnt you i
Price: SL4,95CaiMtie/SI«.93 Dlikette
ib<lliiiioahal(in{h*Kf«tr).Soundilm;ik1Ni>i wKmih*
rkiurr four ikiLt ajaintl othtri Ir I'll* hubii.foTTrlni iicHor
ESCAPE FROM VOLANTtUM (Aiari only) Price: SIJ.9S CaMe«c/il<».9S niikelle
Ilnn(!hcMiinn and etciiimentnf in ucadeiieo your ham* srtth ESCAPE FROM VOLANTIUM! Ti>e".ape n»imml
n'arKijv>nyDUi'^«c«kh<>AriMEHlobilacleiancEliscfblanthciuwdian(wahiHilhein|.tU«nj Ifh»iil.i1l«Jwitha<lir,mi>Kei(Vit
|U9la Irikipfirddiri. adoncqienilnthcauUiJc. H>7we>«. lJ)e(k^or'llPC»rvXlU)'Dpcrll»d^ ll><4jrNltD iKIifKillinw.
ilicdnoickHciiiHlaiK'!i'|uaridianappevi..SomeUmHyciCi:4fiun*ihthiiu£^tlirikjurbj'T^^ 'Cfuppmiia'ay till mftrr
Iffnn It 4 impeP'inU'. At the higher levrh oTpliy more obnicles and piardiani «pp<ar. aiUioA Ia Ihri eLeiiemrrii Lv% U/ii-
leiatutrfw piphiei aod •tiufii. Ri^i^ iin 16^
ALPHA FIGHTER '(Atari onlyi Price: SI ^95 Caaif||f/5)7.9S I>i()(tllc
Ti«i ritrOenf iraphKf' and laton profiami' in nsr! ALPHA FIQHn;R rnjujci you to ilcLtri^ the ilien Kupiliipi' ptiiiri
thiiMi|;h)TniriniorotilH'fkluiir ALPHABAS^Eiiinthepaihaf aiikliehtJFOLnrkitOfi^lei Tdi UhU'L^crt br+nd ihcMmt
mdi BoOiiamHicquaeihtiOTUicl and ft p-itinuvrir mora diirKvH Ihr hiiUniPU Kcr^ ALPHA MUHTtR '^Jliun
6*t I6K iriirmi.
THE RINGS OF THE EMPIRE lAliri onJyl Price; SH.93 Ci»wite/Slli;.95 Dlikiene
The tminit hat d^vthqwd i new tuiiik >ikia:rB protDcird 6> rouimi nnii cf rorty f-Kh ijpk you bUw ihicuf-'v ihe iin(i and
deilroj lite luiioA, ihc mi^tc dnTkipa. a oer iiaii^n mvf tnift si^ttctnt rtpp Thit ncii^ni (ame rum or IbK i)H(im,
nnplo^ fstenuiT irvphici md wuiri and oa be clay«d bf one oi IH'C ptii'cn.
INTRUDER ALERT lAi4ri oi>)>> FYicc: $15.95 CJuiciLe/SI9.»J Dlikciie
Thu M 'I. tail pwTd tiK^Piftne ■hKft'ctlKTi)ou lathe mi'Mle orEbe'-Drcaduai" having ju'U uolnt lupLa.-ti Thedictdi
hair beni alerted «nd (Tt dumri ID dE]Vo> j-vj IE ill 'CHti You imin find and mtcr>oui lAipiQehupe'BiihJheptiai tii<
tnth of diffKukj ire pro>ided ISTIIUI>£R ALEAT re^urej a ;idrvi^L 'ind «ill ur, oh 14K iiiUMi.t
MIDWAY (Ai*riJ3Konlyl
MIDWAY n jweacttmi'Tiitmiori at ibc fanirof Batilolup. Ii ir
ttn bt looihcr human 9t the tomputer C-oior iriptiKi and t4>jii
Price: 514.95 CaiielloilH.VS DiUcitc
M ckalkofei of iiTiiiciy and (Eiancr ^oui lyppoAeni
iKMn iik:lij,d<d Huiu in lOK
TRIJ-LE BLOCKADE |Aiirioiily> Pflse;S|4.^5 Cai*<rMj-lII95 Piikfttf
TRIPLE BLOOLAtlE '1 1 rwoH(o-Uirct pbycr iraphK^ utd HMindacuoc (asM li ii baxd-on the claiuc video ucMk ium
>ti][h imttiDfLi havf cniorTd. Lnnctbe AtMii jayvkti. Ltae object H toiiirecl your Uockadini liMaroutid the icrctti >9i>iaiiE
lUOIuni UEO your appatMntfl). AAhOulh ibr UACipl u umplr. Ihr amtniinl icapbici jmij VNnd dTcn lead EO "Ivt'i
GAMES PACK I (Available Tor kll compuicrs) pri«; Sli.W CMt«w/»lB.93 DiikciK
GAMES PACK I eootamt ihe ctatdE tompBtei gsiwi of BLaCKJa<^Y. LL'naR U^OE■l, CRAt^. Halt^RACE.
SWITCH arid Hioit TJkw tmran hair b«n cimibinnl rato qik l«i|eOTOfiain Toi dK IFV load»V|. TlVfy 1(( ledlUHlLttPy tc-
(rard by ■ ran>rnwni mfou Thn eolknwm !i »'CFrth the piKe lUM foi the DYNACOMP vfiiion of DLACklACK
GAMES PACK H I Avallibk f« all compuErnl Prjcc $14.93 CHictlc/Sll.Vj Dttkcllir
GAMES 1>ACK II iiUludci I^k |Xin« CRaZV EIGHTS, J'OTTl^, AC^V-DUCEV, L|Fli. WUMpiJS »nd .rhrii Al ■Hh
GAMES Pack 1, all Ihc |wna arr- JDardvd u anr profiam 4ru4 vr C*iirt from ^ Tnmo You >itlP pailKUlil<l> cnlOt
PYHACaMp-.t vcKion of CRAZY EIOHTS
Wrsy pay tJ « 'Hr raorr per piogEam aheii jou (an buy * DYNACOMP COllCilipn Idf JUM MO.W
MOON PROBE jAvalUblelbrallconip'jicnl prict: St2.95 Cailctle^SI6.9S Diikelle
Thii ti in eitiemely challenjini "iLitiar landtr" pi egi^iti. Th«uHt ml^e dii>p ftiiin otbit lolarid atapf«drierirm«] i*itn on
the rKrOn'i lulfHr. Ybu [onEitil the ihruS uid [itimlaliDii 'dI ynui ciaft plui dirKl t^r rxtf ordruFnl and arpra*>:h Ulllr
n^imtn leK Alio
SPACE TRAP (Atari only. I6K> Price: SI4.9? CiHct(e/flS.93 DltkcMc
Tttli ■ala'CLv "iSnot'crn up" acouje lamr pl»wi )-pHoear I biark Iwk Yeuco*lic4 your ipatterafi utini Lht loyi'tick andit-
lempt to bkii ai rrujiy oC ihe alim tliipi ai ftamble before iFir blicli hole clawi about I'ou
CHIRP INVADERS (PET;CflM flfllyl piU«: S14.« Caiierw/S|B,»3 Dhktttt
LMtRPlNVADEASiiaDaddirti.TBunf uimiicil{iBir^iht«i.Aff4rrWi9Dfp*<r^alk«finiu)ibrre»<lHiJbetorf <hrCh<rp«
<o«qi)ei the Earlh. 5ialionaiy obtaski. moiiat tneteon, 4nd ihc attaclini Chiipi muit ih tn iioidcd for j woccutul
journey, Grcd tark. -W «^imn /'ET'CBM «i>
SUPER SUB CHASE |Alh; ixilv)
l^l.T'Ett sea CHASE iiBiulirB. a lurch usd dtSrifj aiaiFm Sd your cot
fiuni (tfT Ihr hidden i^bfwrine. Sn ihe4ec<C> chiTK eip4ov«n tlcp<^ and*a
lamt -afiKta takfi adi-wtafe ^f ibe Aian'i (rmptuci and toiind catnbiltiiei
Price: 519.95 Cuictte/523.95 DiskcHc
lit and krcpin rye «i t)<e Wjnai Tuidin|i a) ttctj
;h -Jiemitnk ii:'ii.ardi i^% uib Thit n uiiidijticiivr
Otf c( i"0 pliyiT!' JovMKtiil traui'-rd
ADVENTURE
CRANSTON MANOR ADVENTURli 1 Noah Si«. Swpff B(*i«i iu»d CP M <!nf>> pixe: Sl 5.95 Diiken*
Al lu: A cnaprctKCirvc Adirnnm facK fo( Nmi. Sur lod CPM i^«u CKA^^STOS MANOR AUVE.VTL'JtE iikei
)ou inEA' ■nyH'Cnovs CRAJ^STON MANOR wfaD^c fou anonpi u> fjiha fibukMii, treaiuiei. Ltirliai m ibr ohoac ut niJd
arnmab aibd latjou «hd Wi am frrt up itie iKUjfM Bitfaoui *. njhi. Th« njoibii cf (ooin.'i it tftaiet ajU.th« asMoaud
^aKTipWiil Mf miKb m^e tiabVialF Utan Ihe (urrcnE pppubr loici of Adimrjir ptofruBi. makin| Ihii larv Ihe tpp IB. ili
elan. Plar can be itopnd ai apy ume and iht lutui Mcted oa duLnir, Soe nailaHc m i '■'" CPj'M lormai.
iktlable al Ehe larair
Pricv; 121,99 Diikitle
Hnd Tour ^n 'o the tbMh tirte ■hik mairh-
Thc (hOKr xilUffm yiKjr ipnd
OUMBALL RALLY ADVENTURE ( Nonh Star only. 4IK)
Take pan tn Ehu outlaw race- trmi the cut tout to the vnicowt. The (oal
tauuni Ibr li«bni poiuble ipctd Tou mar cbootcoorot Tii
knd iinff HenicinbeT to tak.e ipuc pam u>d don'l get ciiifht ipradiaj'
UNCLE HARRY'S W] LL (North Slh do!;. 40K^ Priec: S24.93 Diikelle
UiKk Han-y hu dK<l xod bai' kfi you everythint. H'0«ei'ei, be IUine(k«ned to mc9)H0«>hnceviTvii>ifi| it I livtead, hw ■tU
'Ccnuiu ot I poem •tiich coctiisi ciua. Yoa wdl have id uivel ill 'Ovei the Uiiaed Smei hKh br cu and on i'oM to iclic i3w
piuik. t.n£ ititre irr svei VK locanou la probe. Be canful uid wiiah oiii far red hcmnfil
TYPE 'N' TALK
DYNACOMP II ro« dinnbuiiiii Lhe nc* md levoLiuonaiy TYPE-'N-TALK'^^ ETbTTI ipreeh ijnihnuer liom Voiiit SLrnply
foruiHTl TNT la your computci'i inial inlcrtfcc«. ttihH t«il UdM iSe ktyVOUd Vkd'heaj' the M«rdl ipoktrt TKT iDhttaiktE'tO-
plS|T«mipReh lYfltll'tlillT 'On ih-rmaTlld ll llt« IhilewtMBOuntorinemoryarjIproviileilhrmojj fleubk '^i^ab^larir iiailabic
any* hire!
sfleubk'^
TYPE 'N TALK bsl pwe S17* D'^'NACOMFS pripe $519.55 piu S5-00 fcr *tepp>ng And haftdliitg.
TALK TO ME (T"NT AUri only, 24KI Pficc: S 14.93 C»»«W/S1 1.93 DilkHW
Thii p(«fr*n! pinenlt ■ superb lllj'tirul m tprsh lyntlicBi lubsthe Alui 100 and FVPE 'N~ lAlK '^ TALK TO ME nitl
J]i2BrBi6 nortnaJ "prd fme<Kicfi ai w^ ai ph^neiM BcorfWwn Tfte documrria(Kin ireiudn many Acipful prbitammmi
tip* TALk TOME hai been demonttiited on relent K'aSI TV<
OTHER TNT PPOGRaMS MOO^ PROBh TNr. CHOMPELO TNT
MISCELLANEOUS
CRYSTALS '(Auriontr) PiSce: SI4.9S Cuscti&llS.tS DitkcBc
A amnc altwiUun nadonily prwduew fwcrimwti F^itBa dnpliap KEompaavd ■«itti tatm «kkh -net at ib* puma ttt
bllLh r*Ofwop<eTWTiiarf Ibewme, Midlbt WffbwedrHy* ofihuound and irxpliici arrcRnniauliari,. C|Ctr$TAL3hMt*tB
jk4 in \ixtl M>om to'dcnwnnratc iM rouod tpi color fnivm f! the At«ri Ki/ni m \tt. \ii\
NORTH STAR SOFTWARE EXCHANGE (NSSE) LIBRARY
DYNACOMP tf)m diriiibuui lhe U tohia* NSSE Uiar)' TIhm didtifiu* cacb iontaui nan^ profiKia and DlTcr aa owc-
tiapdmt »»*•* tor ifte pwebasepriM. TheriAdiid brp^ ainni North Siuuin'i coIiKtiaa Call m »rm DSNaCOMP
ret -dftaili rqardoti ibe coeienu of tbc N'SSE colhcuoo
Pnce S9.9J e»cVJ8 9S eaeh|4t»n««ei
Dw' L'OfnpUu KilkctHM nuy be purdiaud ^ SIS9.95
5H" DtSKETTES (ioft ««o«d/wn lecMndl Price: S39.9S/J0 Diikcltei
Ay youiEiibi inacme. DYNACOMP pcmhiUadiikciici u^lattcqiiiuiunu.du lafMheMk pricti Weiaarti tc put iheHv-
BUSINESS and UTILITIES
UJ
7.
z
z
I
z
MAILMAST^R lAiirl diiL^ttc cnljl
— i...j jiv- „ januaiini i
Prkc: XlV.45 Dlikcllc
PAmLwifi.ii m II I vrryxTtiiuc hi[i*uc [t»:ii|c idi muikfini ind mmnicnjiHinf mill iLililndmuM iVA b«K* txh duk
£fn IkiM over too CUV amn cnirici cciEUuiini nunc. uUrcii. 31 Irlicr Lfy *cirdi uidA pCuiiK numba. ThcdBpUr iiimirt'O]
10 ihti cn[fnniTU]r bt mtdt uid ediied iitin (u«. Th< ^tiiiuM*' 1 h diik i^^tt klc+oiAioni, eicio. iho^c ii iJl iueci. Libcli
fflty tM (iliftird X,! 6t 1 up, tAd ttl Mflinj (tifi Eadc aIhI abphlbrlHl ii pnlcHmcd \ft ■ ^»> mKhint itlitu*l« [KOtrisi.
PERSONAL FINANCE SYSTEM (Available foi all coraputerO Price: SJI9.9] Diilicllc
PKS iii± iin|,k diikcitr. mcnu-orkni'id iiiimi comfiMfd of Itci diFf'tftni pfoflfuni. Bnuki r«ordiii:|, t^utfipnun vA l>v>
dedkiciible iienv'tF PF^nill kki 4Ad iLinniU'iH tipcnxi by (i*7««i,>nd diiplty mrMnuitoo en (i.p(ndiiijrci by iriiDf Z6uicf
drrinrdcniriby rnoAlhiit bf pJjWr PF!L wjl Firn piodm^ cnpntKlrbtj Bipphi f\ iiDkii rip«ni«i b]i CtietM)'' Tlui pcnrirCjl
pKhifc rtgii>m onli' pw d»li diivt.tnninMl Rwrnoiy Cl'K. Aiiri. JIX ht^iih 'Siu) ud «il1 ii^ir htp iQli<V>r««ii[ jict diiJi
lirdd^'Ci IDODicciHdicwciitit. bf mitifl|i IrH iimpk clunimo-lhrrtotiunil Ydl cutrKoid chnklphlt Fuh cipnun ut
Ihil yau c*n rinkllr w ohtit toui inOinr> tact uid (imifuir i-utHtwoct. »fA iltdiiMi hvxj <ik:ul<Ltcni L'wiium lti(]i ip(«4
mtchiM Uiitu^e w>fl PFS hxli b««ll d«Woiiiirilcd at, Bftsitf t |t'B!i> Tit !
h'AMILV BUDGET (Appk ind Aiiri anl|| Price: S34.93 Dlikctic
FAMILY BL'DUt rutin} c^n^cnKfii rtnincul iK^Kd-lcrptnt |KB(iiin. You <ti3l be lEik to kcrp iE*cL of <uli and crfilii
npcndiiurn u iirll u inccAM an t dii!)' btui. Yau cut recced ui dedudibk iiem) 4Dd c&juiuMi ifamMHiu. FAMILY
BiLOCETklio pioiidcia^-oniiniiOuireciMdiOiillti^MiE MktvMXtata V6ucuE94ik(d*iliicubuidckuficntri»icui)i[i(2l
dirCertnt »ipmi< tMauni'i ai vtil ai ic ! ptT'^) -u^ [itk ii^Auati. n*iaaf<Mue)r rtifiiriiid ihtuif iitr kun ctHnplnr cmirvl
oirr IB ulhriaLU cAWH"^*"^ l*nd i.liar|lriiinl^> iub|rcl
INTELINK lAlBri pnlj> Price M9.93 Di*k«ne
ThM mtiviTf [kKkti* conuinii t nvnu-dii>«fl calkc(:ici9 ui v^^fVM. Iw FacJimini trrKHni ii'o-va)' cnnmtfnKvtKinii
Lnrouih i full duplet tniHlrti {trquiird Ftv in*) \t\ aht modt at B(i«ltli«T Jrau mat fceitfCI W « dtu KTvkf lc.|.. Thf
Ji^URCt or MKm'Nrli and gui(li]') lewd Atia v^Ox #i tiw:k. quotMdnni onlo griMjir dnictli for liltl iitwini., Tllil ■fUl!)' n-
diKti "L-o<if>h-i time" and ih^i \ht Hi^Kfchwic. Ynu mat iIh rtcotd iKr<o«plar ionimiioi ■ canjsuimiiAat Mutoa
AddH^HuUf. piDtrxmi v-mirn in BA5(L. ] OUTRAN, cic. »!■> be tuili DlllincuUnf )'<* luppon Itit t4it^ «i>d latn "kip-
UadK'' In liuincf rMnpui«ii malii.t| ih« Atari a wo tman icminal. Exn Auri BASIC pioiruoi mai' be upl9*4pJ
l-urihrf. a ipnunpnd nir m4r br tvil< aEI-lincand uHd litre « [mtiollini mpui (oi J iiAfic-ahaft iriKn. TiM ii. >{mcu ki
up yuir vcqurrK-t ol imif-thair (onmandi and w%\wt>i,. and ihc- A^ui ^Ul tiMvn'l ihcn *i. n<n!«l. bauh ti*c(«tiin|. All
Ititi uldii up CO Ukir.! tuih CMtncct tioie and yoLj wiac
PAYFIVE (Apple 1 1 plu« di*t*lie, 1*0 drives rcquirid) Price SM9-9S
Thii n j(i r4Wiinetjtl> fbktblf tfliplc^M pijiotl i)i3«m iriih miaordiflU'i]} (oad human cnfUHcncif ^caiLm PAYFIVE
pitniiiVbctkiiWulnnipilnihf rmjiird inJrijJ, itjir uhI !«■[ foimi TcK u[iia J4I dspJOrMf' Th< pafnKTbodi nu) bi bour-
l>.uliit'.fom[niihO'r or am combifUKin Tbncart niulii^<>{iii9n le« pai proodv *nd lhrT»l«if»n bcuxd m i.r^ cmiI'
btnaiicn PAVFWI Liirliidrii>«B>ii'achrr Iraiurfi and [DtnntiTrnric'y >tII dociinvcnicd ^iih a 20Qp«K <n«nii>l tlirmanuaJ
mi> bf [MiiilLaMd Miwrairl} lor IH utd Ihti p«>in«ni lairr appJird to ihc ult'^air puic^ux.
SHOPPJNG list (Alarionlj'l Pricct S13.9S Cal(r(1c/tl6.93 D!»lctfl«
SiHOPPI^Hi L 1ST uomintMinaiiH>c<'i'iimi ^oupuicbaKai ihcikEmniirkfl Bcliur i.oiaj ^hoiiiuic. it wii] rnivAd t'OacI
all ihc init>|i )ciji <iii(lit md, and ihm diipli) iw opijoniJI^ ptinil ytnu ihopDMii bM af>d iM Twri fml A44ibi. drMini.
TAX OPTIMIZER |A**a»ti|e foi »|1 cumpoimi Piic«:S39.95 Dietetic
TbrTAX OPIIMIZE.R n an ru)'-i!>uiT. ttwhu cnrotcd wfi*aft MCtaft »hic>i pfond>« a cpoi'ta^a' ntrtm fpr aiuJrisi
•wvi iKMAj lai iiiwctaCi Ttac- pcoff am ii dti^rxd la pio>id( a i;uick. ud eair daia eoir> Encoac tii n cDracvtcd b? tJ^I
\t,\ Bvrthodv (IrfuUr. innMv airfatnl. TuaumLiin ani attcnialt MitimuKi laa) Ti* uMi nur lOUMdiaiffi cbwnr ItK tu
dlmuf CTiiual niuKiaJ dccii^ioni TAX OPTIMIZER hai b«n ihwjwjhti firtd imnJ ■" CCa offuci ini comn eiMi[>h9.4
wBh IM {vncQt laL uMn la tti Oau filn TAX UPTIMIZtR ii ixi dcduciitilr'
irriLlApplcRnl^4RK» Pllcc:il».9S Ditkttlf
inriL n a dnli<>rtm«d hiiil>t> iiM'Cm ■Kie'iprrmni r>aniiriint •'vl ihu^pf of th* (w"f"(iDf PtK i ixnd ! i dnLirUn at
ihf biKiiibbtror bru)lritt tknh LTIL imicu m^t naniiK ilwcHtfiiii ofaditknir KTi[>t^> Kcior. mirMiwt i}>«Kt'
l^tipniitEli.lnlkiCllr inMit(4 i bad McliMi Miir be "rudl<fii''K4*d p^fMm BUUir CKbti Uptuitiuttd Dpfraum Forth*
nptirrntvi] ptqrwnnyr
TURNKEY AND MENU (AUiionl>} PriM: 111.95 pi*k*tif
TLRhkEY It a u9ibit p46(iaAi ahicn aUAvi i«qj is cieiut tiiiob««4^aiaa4kiE diiicTUi caul]). Suaptr l°*d and run TURN-
KEr. Loadlhr prufrun dnkcttr (o be tM)ib Tied , XM lAivcf EM 4u«i:iOai' Tbr TL'S>KEY daiRlC ilM'CWIICI >*nh DOSZO
arid inclv4ci HWhIut EHOtiuii. mini; MENI^ lrvi<brc«<mi gf r*"" dutrtlr al^halirlEltljr, Uid [*nikill.IM r^iuunt of
liiji BA5IC 74^afrm do tlw ditkctir t-j ii^wnt a un^ kn TL)IM(EY a(>d VEhV p«o*^ ypB wafc eJw xbib'tT to ttit. utn
proiiifn on youi diilcnlE b> itmptj :li7ild( hi the cotnputn and ptniinf i iiii|J( krf
STOCKAl D I AUri ois,l> ) Pf^Cft 114-95 Diak<iif
STOCKAiaprcnidn a pv^rrlnl vn ol looh fn hkI tnaitn ai>aliti> Wuh ^tQCKAED r«i (xn du^iaf paiat aM fi|ur*
chani. ai ^rUaibv ciuni wHh owdlaiori Ypu£aniJKirunu]Klon|i<m n(^lflta>n'a|inando<i-balaim>'0'iirB« rnivin
STOCkAlO allAvi ]0v M aipui daiJ; dau wub a un|b dhiktiit iiniH* la^abdji) af 11/* da>i ■ 14 uocki InclkidoS art
Wort 4nilrm] *nd ipirt adjmWiBcnt rapxMilin A i»i> pralnuaiul packxti'
SHAPE MAGICIAN lAppIr 11. JIK. dUkiKt Ofi|> I Price: SI9.95
M taS' AnuliLilr (ot paiBkuI) ^rainf jta^m ihaivl I'M Ihc Apptt. Ctnt(,*dd IM iai>«upiC H'lhirpei •*UCh can Ihra bt
flirt 10 4rirk^ iUr*4« nmri c« io -"unplr rnhxan 70W prov*"* A^ '*■
EDUCATION
HODGE PODGE (Apple 4«K ud Atari diikcllc otilyl Price 114.93 CuMnt/lIM! ENikou
la HOEX^F POPOt b* yvif (h>Wi it4ci<n PirwJtti «ny ir? en )a«i Apptr i«ii rmii a. a ditleiMi lod mtniaici "'liap-
pcnni." tdawd 10 ihtltitn v nimbtrol ibc cthoicn to Tht pfflfrim'j p»pfti«, (lAw and wwiid af b a dcigSit rotcitaldrtn
riMiat^ I'l to". HODGE PODGE lia ua-uuintidauiiit iCKbinidoKC f-lixh bnniia or* dntKiiiioeTD 1^ uKcfcw
pvtfn ui rdiaxtiDn %a \Yt ructtml rn'r-i of tda ■«} pOpulit pen^Mn irt IF^FOWOHLD Ud SOFTALK
TEACHERS' AIDE (Alafl DnI;) Prict: $33.93 C»it«ie.SI7.9S Diikenc
TEACk£KS' Al.OE fDhmtt cT \'s^*< b*uc nwduktcoeuiiiMin ah pievaJn The run modiik pft^^idn ad^tiMi and w^
Ktdian rt(i(iKi a' iairiii| kMh ol dirruuldf rh* i«»h3 raodulc conuili ai Riulli^KaiiOO ptobVmii m ihhACh ihc Itudinl
m*>(*itvrtb<nhci!Pb*fir«(Mii-w4"!i*'woniii*wb«pi*l»"i"?nunhrio"«h«MEp<i)cirfiiir ^nalkitbercoapkid)
•irpro^idrdbfrE ai ^t\\ TbcrHjidnodok cnui»;i'iildi'>n>onpTob<wim..o<K Mmnilattr set (f«iurrii'thcdi'tis«i<iaMduli'
ltlU;lUloMhalUdl•ll•onlt(^4«a^b«dapU|«dal«n|*^lhltH^(IIlail3lS«IlnHdfT1Dckarlf dnmuitaKiht^w«4«rf br
*n>i;h tM tiMWiAAK II deiiiM Luai TliACllEft'S AlDF m hm mcfdr ■ diill. bu raibfT a kvnuii nivrlOKC
PHARMACOLOGY UPDATE (PETorlyl Price: 1169.95 C«»lcllt,1149,93 Oiiltane
Thii. D DVSACOMPt TifM riucaiional Hrixic «iir» tw iHf iDcdxKt pf*r«vOT inwrrxiE (oniin|l| fMAtcMACOLOCY
L'PDATI '4X1 '•nttcobf'a K. M. ai a naiEcnprotcct.^iihibc ad oFa ptaciKint pha/Tnat:9l«rvE andanrkCTDfuuiaib^dcittf
Tha pukxtriDinn lo lail puii. Dw fim p*rt 11 a 3X> »at« fllAAuU slbch It Oiiidtd. mlQ 11 uaiiHi. Ejc^ DfthcM ictliOII?
prviJa boOi (oncBf mronnxlion aad ptiriniii quntiani Thk ittuMd fid/T CdMoti d[ II ptOfiaiM itiai Vt k.«>«d iolhcim
and vhicfi im in* dcinr ol torn undirTiiiirhdirLf of thf mt niHftitl Thrt pwtaci hu iTtat pducxtioiwi rahi^ fiH iM bcfiii'
nMluudeni ai <vrll aiibr proEmiona] intrrnird la aji rfficHTit »ati£>rT*hr« ami updait hiiv hft kimlrdif ArailaMron
cawvtln (Ilk Dl 'dtikrllr
TEACHER'S GRADEaOOK (Apple ^BK dual/iinf Ic drive | Prkc: Si9.93 Diakeite
TE.aCMER'^ GRaDEBOOK II a te-npttit r*ll■<pr^l pcoifciitd EKMd kr«ixn( i>«nn \a iPh fLauriHcn li itetvorTi up 11
nuir ■1(11. and rwh uwr ma)' haii daLX fix u-p taniDr riUiun ^fiiMMdiU. ;«ah up EO Wilxdenli pn claul TypKi] inltinna'
iwa ThKhtxa l:«fiiiri|4.fijiifd and procrurd UKtuiin imlTTV xbtrntn and [cxdn SumntU)r tCpMU OUr bl dttpUycd IWI
iheKtnrtlor crimed m lanout ■**is. "Oh auiowaac^paSirt a»tTMioa»n«J(onTHTiJror \a Mt« (rptef. Tkiairau*bu been
Elites ["lODf-pfcxstrd"! in ihc cLaixniKoanKnt and 11 b«1i '^dl'BTtiiin and vdl-dwummirt.
ORDERING INFORMATION
Sklpftot a»d Ha*«nCtort«
Wiihio Mjrtlt AmfTKa Add U DG
Outudr North Annita Aild E \*t lAir Stail)
All ordm intiudiiii booki:) art tcni Firw CUh-
I" CP'M C
Add I2.5C b) ihit Uaicd diiknii pcKc ror nch I" fl»ppr dnk HUM von u
airi L'P/M (lymail. Pionami imp -vndct
DYNACOMP, Inc. (Dcpi. e)
1427 Monroe Avenue
Rochester, New York 14618
24 hour mcssn^gc and order p!ionc: (716)442-8731
Toll free order phones: (800t82S-«772
(800)828^773
Office phone (9AM-5PM EST): (716)442-8960
N4» Ycit Milt rrMlHii »kuf idd I S HYS Hhi ui.
DATA SMOOniER INn •iiilibic ror Aliril
STATISTICS and ENGINEERING
DIGITAL F[LTER (AiJ»H«bl« tor all compulcrt) Prict: SJ9.9S C«Mlie/M3,»3 Diikeiie
DIOFTAL FILTER ii a rampfchcniivt dau, pfenHina pio^xni whith ptnnai Ihc uw to dcuf-a ti» own TiHer rvncuoii oi
diMH rK«a a SMOu ftf Fillef (anni In ihc caiilicti d«i*n iFH"lr th* iJiape o( ibe TiequciKy iianirrr funawn ii wwfinl br
dirmlj eB+rrini poinu aloiv eJk dmted nJwf cvr>i. In iht timiu n»d«, idoJ k>w pau. hi^ ju«. xnd bandpaa fihcn mair be
appTOMiiiatpJio>amn|dnfK>accordin| ti^ikniunbcro-rptHiitiuKd lq iht oiculaEion. ThrvritLentrui'OfHkmxllyaliDbE
iniMdiKl *3ih a Karninf funoion. In 4d4it«n. muW uaje fruttcfworxh fiirn may bf Kkctrd. fc«ru(ei of DIGITAL
FILTER iocludc ploitini o t Uw data belor* and *flfr niimm. ai -4ll u ddptiy of ihc dunrn Fdwr Iira:i«ni At™ nKEudsd
an coEt'isknl JaEx itaiaj«. ictnrval aod idninf. ptond^rn-.
Price: 119.9! CHiclfe.12?.93 ptikeiLe
I dcm« umTiiI inronculkin frDiTi notlr bUHnm (Pi! rniinrmni
I Wteh K* equail) ipacfil. fba wri^art faiuMf rhokc in di^ioe and lu^f of fn. u Mil ai mHwihcd fini ami! wotid
dcnTXIrtc uLulaliDri. AIM lIMludcd it aulonulK plMlbnl of iht inpul OaLa and iRitKWMd t«iultt
FOURIER ANALYZER (AviJlibk fof ill c^impuiera) fricc: tl9.9J C»mil*/llJ,93 Diitdte
Use thu profram lo ciaminT tfM IttcwiCT iwctia of bmrtcd duraEiMi itsnali The profiim I«iuf« awpiiut*; uxkai and
ploitiAtof tbtMpul data and nulu. PiKtxaJ applKiEioni mtlialc ibc aai]|«ciof caniplKxin] putcmi in ruch Firldi 4i?lc<
lioBKi. [Dcnni.nitabCfLl aAd biOlCKU.
TFA <Tf*o*ftr Fufi«iOrt Ahilyic*) Price: 11995 Ca*wdt£/S3J.95 Oiiknie
ni» » a ip««a] lofE^aJt paclair "hicti may t* u»*d IP cvaluUE thE tranilrr f jtmipit ol iTimsi uiEh ai t^i-fi tmpbrteii and
mien br Eiammnii thcff rwpoM* is pwtirt mptiu tf A » a «*)« okadifitaiion ofFOURIEH ANALYitH and oniiBUbi
(OCiaccnni-onnuid dcnMli'cnuikofFreqMrprt ph^ai iFctlai daia«diiiat [ealura. Wbcnas FOURIER AN^LY^^l ndr-
Himcd \ot ^BOiiAfial and mattirx un. TFA o an fntmertint HwJ A*a(iaMr (o* all contpuieii
HARMONIC ANALYZER 4AvBilBble ior alF compulcn) ?ficr 134,95 C.i»ette/S38-93 Diihellt
HARMONIC ANALYZIR «ai iSeiifiMd lof |kf K«ftuni xi^r"* tif fip^itirt *»'.rroraii. Fcatutn [Mlwkdal* XM |n<cfa
iK:ia. iiiiiini and itofxic/midkal ai oeU u dauairi tpvrumn plmtini Onr t«rimUilr bin4jiM: faoLiy ii ilua thr mm d#tx
nmli»ib(n]iuaJii{>ac«di>i]audiet TTMoripnaldatxu KWicd apdacubx K>EiHiBtcipolaiiM n UMid icflcxicthcdxia Tik
rcijuircd b> iIm FFT aiicpthm.
KXJRIER AN^LYZ£R, TFA a™! MAkMOfJIC ANALYZER mx) En pirdiaicd tofnher for • ct™,b«iBl pntnsl'Sil *J
<ihJM cxxHtieii ird 141.91 Iihm dokninl
REGRESSION [ (Available for all compulen) P"c*: S19.95 Caisclie/*2J.95 Diikellc
Rf CRESSIOI>< 1 n a unique xod tMiprkraafli i-ETWik i»e.dMneniiiwi*l lr» n^ium "furtjiieniial" cur>t fittint priqirafn
Fntunn indu^ m; b^ acAmcf. an lutoaiaiK ricpn dnmiunalKm Wipn: xn niauiic laiecul bbrao of TitEbit fuoc-
ihO«i; data ed!iin|.«i«>pa<aiK iiUta. ctwrasdTTiidualiiiMticii.aiiaiuiKa] aorirni lif : tundnd dcfMiia^n. nvrrbtiDeoMfn-
mi. Rc.) and taiKh ffhoc |b tddMxn!. d» rm inar bt itri wcbooi itcfltcruii ibi daia RECRE^tOTd I » c^tUisI^ ihc
»<nfru»nc profiaa in atir dau ajwhnii i^rioxrc litexi>.
REGRESSION II lA«a>litik for nil (ompuienj Price: SI9.9S Ca»teiIe'12J^,95 Dii^eiie
PARAFIT H iJrawMd lo baadl* ifaowfaaH 10 *hi(h the puaxDcicri uc ervbtMed (pomEtlr wmttarajETl la lb* rinmi fimc-
IKra. The UKt iiap<T iMCru th« rwnUKtaal fo™, mrludiOt EM pai VUUn (All }. Al2>. CU ) U M>r or iBO«r BA51C liaiMiMI
luiH Dwa. toulu and reuduab Bity be DtwupulUol and plMitd ai auk XEGKEl&ION I Uk RECREKIO^ I ^or
palToeaial TubBt, and PAKAFFT r« tbotc cKnpJKairt Ejnoiwti
J-tULTlUNEAR RECHESSION (MLRl lAi^aibHe for al compum) Price S2*.« C«5MJlc.'S2a.K ISiAeae
MLRit*pcormKwialiofti«iiEpacla«tfwi(»Jfr!T*dxta«(irontjiininii»i»«m*(lirw4rt| JKJcpEi^ Bet-3Q
pnfnnuni tJ« bauc rtfrtii:04 ukulatioo. thu propam ab« pttni*^ emj :a u*r dxia mirr, tioriK. rei/idaJ and rriiUD|
UpirTWOi |q additifn. iPiruHi roxT ihieticfaECihe wlution b} tupT>tTi'''<^>luEi l?i ibrindrpcndmt laiulhln ThdnuiEberol
tiaitabin and tM* un U lanilfd PPJr br 'N tvadxbb nicnieiT
REGRESSION I. %\ and MULTILINEAR RfGRESStON na^ b« pwichaird lotcihcr Tof l!l Vi (tunw c^uranp n t*l »1
(ifacH diakaiteil
ANOVA(Nola*iil«bki>rt Alwi (MlMW 0* fo« PET/CBM) Price: SJ9.9S C*a»rtlc'W3.95 Ditketw
tB tbr put ihf ANOVA laHfn" p' -raiiaKcl protrdute hat be<n Lnuicd to Ibc larfE njaipflfcav canpiini. f*am
DlfNACOMPhaibrDUfhiibcpff^wcftbBOKifKiatQinulliiTtratt Far ibcKtWMterTxni wih ANOVA. uk DTNACtW**"
ulh-atc »*ciat« mcltida ibr I •ay, ^--ayaad N-w*j prmrtipw Alw pnwulrd a™ th* Yate* l*^ '' faciimxldaitiu Fm
IbnciulaiBduimU) ANOWA^donoi »CHTy.TTw KcnQp*nTia(doci>IDni«loa nai viEtn la a lidenal taihioa llFr a piD-
Ttwwmilw wbjw<la«liiTTTiaixagctBeM HWodttcaaniptbEiubtn^ A<xpmpM;uta A^tQVABaMnartgn^^
buMnf ibc dtia bait. |pct«4fd fr* mml amrsHEni r«ajitm uKludutf da:i editmf. d?lnia| kA- ipp«id:Ea.
BASIC SCIEfiHFlC SOBROUTIKES, Volume I and 2 (Noc »viil»bl* for Atari)
DVNACQMPr |hr rulumt dienbulof fur ElVe lO^t-ait \.n*t to Efi* popuUl tnW BAlft: 5C^£ST7fTC SLJr^OI/rj.'S.fJ,
Fo^J^n f«>>rf;t'7F Rufll*»(hclli«ad>otacmra,tiUiBkTEau*Utnt) T^eic lubnjulinci haitb«ti«*K™&»rdxt™idmi
10 ebafKn ladudrd *»i, each coHtmon n a mmu iirapani vhicti lekEit aM ttmoAurtm each lubiouim:
Cj»a<ici»a 'I Chifitin 1 aod 1 Dva aaJ functMM plntini; Kntpk* >ari*tiia aad funcui^&i
CohtTKMi 1 QupKi 4 Eitrnded Baitu xnd rtat* opnabcHU
CoKkikh n CtaapUTi 1 and b Raodon nwnbn imrcriDn |Piu*n, Ganmu, cic). u
Pnc* p*t ciri)«iioci ll69JCa«KMe/j;fl95 DuirtU!
All thnraJWiDRi ■» aiaiUik Im S449S itlwK cmunul and S31.»4i
'1
Lna^r. totyaciBial. ntUiicbBii
. 5<m wnwpTinialion ln:hft<o« IK
- FuDcuonai approi
CDBcction fl: CtMpin'
C«Ukt4<i S\ fTbxptcT ] ■ FuDcuonai ipiprouiEC«uctu bgi itaainti xeilTnulMdn
Cohnieii M Cbapwr 4 ■ croxDH: ifvrouBiaiJCM 14 trvonoRKUic. hypntxriK. npiMtmiual and kicanitiiajc
rwunn.
Cohcucn H: Chapur 3 - TaHr tsicrpelalMin. idirrmetutim and rtWiiaiJM lMci-n>iM. LaGrxfice. il>lp>n)
CoOtcwo M ChapuT « - Mcthodi lot findni ihc rtail rwNi of runctiiMi
Ct^IoiHia /T Chapur 1 ' Mebodi f« Findiaf thr ctupph* ro^i, el Iubeudbi,
CcOfCTiop « iTkwiw I Opi^iiiatiM bf uecpni docciM
PtKE pet Msfcetwfi It* W C-»rti«'*il « DuIbi^
All *i«bi coUrci^wi aii a»xiLaMc for m.n «v)» n^Ktm) and }l».»^ |n^i diUnm)
Baaiiit lb* wtii ar« a kilal pw or the doninKTUtkM. B4WC 5C/£lvTrf it S L'MOl'T/.V£3, »iVi^
r>e<B DYNACOMP
BASIC SCIENTIFIC SVBHOtrnSES. Vo( 1 III9 pa«3): II9.W + 7St pcitiie
ftAStCSCIEVTIFICStlROl/riUfES. Vol 2 n« [*»«>: 113 « - tl.WjHitaiic
Sm rnvnL in KlLOftAL'D and Dt Dobbi
50FTNET (Appk I i. 48K, diikrtk onlj) Price: II 29.9!
SOFTNET (HI b« i^Md tq ^tst« nodrii of liquid [npcliM i;tie(id Id Evakiati ibcu fh:- pcrformtffct L'pip l^nada«ah
up la I W oHDceint tiMvemi nay bf i4m>ri4iHl. and modrh mar bt OMibdMd lo focin >« tarter Dodcii If mi we ■n-rahrd
in Baief duiribtKiaa lyuenu. chotiical thiid ftp* probknii. buiUni pliin.«iaj. dif uMiU/ ijiuairteu,. ihu u aa idol aoBfyst
MATCHNET iTRS-SO oolyl Price; SI9.^3 Caawite/T23.« Diskette
It pflen, lakei cayi lo iieratj^rly optoaue an L, Pi w T mxichiaj nctxak for a pamcvlar vpbcauca. Tai* a fp" nusum "*h
MATCHN'ETaaidyau viH ha'c the g. (nqvmrF f«pc«u« aJ>d rrlWsiiM tuelTKiewi fo» aoj of iwtvE nxiiimt net»™ia.
Tmi Bi]Ha Ehc HnBR add IrMd Hipcducs lad HATCH NET olculam die R. C. (and L) ««hn and pkMi |xad/cr pnta) Uk
rftq»*l«riIWpOI»t«Pd'tfl*«K>o corf fmenU foe e*<lt«*lJijW»t»CL The rmrwr Of Eho pTOfraJB renwnbiT* *boi Etc use »
te Ihu by liajKl and kTro MATCHNET'
ACTIVE CIRCUIT ANALYSIS (ACAPJ (UK Appk mIi-) Price: SJ3.H CuKtWAW9-*3 Diikette
With ACAP wu Mil HuJm Ih* ratSBae o< aa acurt « puxii« owipaeieEt riciui TV rtteiri bwt be proved at fqual divi
ta rrnqneBcj. and the ieMhui| cottipln ira*tajei it ndi EaB(io<H«i joKiur* cunuacd: ibe rrEqucarr topooic of a njto «
aBpLiflcT nay be compktctjr detonuncd ill: rnpcci to hi^ ampJiiH
aulrHiolEiadaAceof *altx«e tM^cftid ^tstta reiiib f roen lotennn xi
UK Cltmi iteiKiiptioiii mair be u>«l onlQ UXWIlt « dtlknir to be I
ihOSiid be p«n of ertfT rucvo iJeuf^xT'i. pcDfraai lj6tfc*>.
LOGIC SIMULATOR (Apple oiilyi4aK RAMJ Price: SJ5.M C«tc«e/W9.93 Diikene
Tc«i T«u — — r*"'— * di^caJ k^fi: dea^a •ith reipca to pvn ki of mpiu lo dotriBiiK l»* *Tfl Dh cnmri viO ofietate. The
rkmou-hick «t be«iBid*rd inclM* tanliipie input AND, OR, NOR, EXOK. EXJiOR aad NAND(«», ai "dl ■» in-
>tTUTi. J-K aad D rkp-flopt. aad oMtfwU- [opuii ntay br ddikid ut «iih taryuki dock <yck ienpbi/doplac^naia and
delafiaiaf b« nnoducBd lo ptdCh for (b4cfaeiBad race coaditioqi- A tnuni daavu fur bj im mt of bodet nay be pkKted
uMti HIRES trapttaCi S»< your bnafbonrduif nnul the catvn ii thecka! br l-OGIC SIML'LaTOR
NUMBERKRIJNCHPR (TRS-80onl») Prke:69.95 Ca»»elU;17J,95 Diikme
IkiipiD(rin.iihei^ai[i:oe>:pkueumcriC«]*iialru]rncnia>aiUblclMth<1t£-40 Ji can Eiandlrup to 131 data irti, eath
lei bartni a tu (li^airLn ume li uxiuda cmpleM Oaia tdute^ ftctlitJei aad cmkouiEi data in^t-'wnpji wpabJnr Tbc
xnatyKi xvailab4c arr multJtik Imev Pttntaipa and lonctaiioe dcteminxiiOA at rtitdiialaH dau vxaxCHmaiiocu acri eiimuM
l.iap'hh^ leiKiKHn, utctulinj. xui oMuat, aad nwec Tto: luppgrtinx ilmMiiaiiiaiitiri u axuHMli mU %nitEii and ad
arjaiund, aad lAtbidti apfKudioei which docTibt t^K niascrKal procrtum bk4 m ilie ptofiKra
STATSORT ITRS «0 wiljl ?ri«: $39,95 CaiMtie.HJ.SS DHkeiie
^ AT30ltT caanu of iev«n] Eunu H^zinl propaau -^ti aJ]o« Hi? hkt i^ anir !>iiukl. «dd. Acrta), fdcmai ud. pniu
Tlla. (iniKbiB*) apd then OS bi:]< field,, x^ Cuacfkallji fcaxJyttlPUnmLnr. miiumuM. «Tgap.-«ariaitce. RiV^ard^nuiMal
tabvlaicd dau STAT50RT :ii •tQ do^vmniRl xul mr to uk Tlit caautu lenion can xlu be cnphTjrd lo cmte a data
type "hich caa be lod bf (he Radii S>Kk Adi-wicf^ Mimical PVckasr.
STATTEST iNotaTiilabkofi Atari CMfctte or fo'Pr-T/CBM) Price; SI9.WCa*wite/423.95 Diaketu
TTitiBawaiBaMf mreTTnwpacMwtinah«lpaTminiakewa«itBCOiwuiBilnf»etof uncanaaatT la an Mi«T»nr»t fatfi^n
rou can buid and «i&t dau TJei tnd leM Ux dif fernmi ta. bma^. laitanrtt and ptopomom, STATTtST will abo pwfocuB
diau aa*rriu ai will ax do bnur oHnLaLiM and rtitnaaion , Tlili PB«ii J jlHKiad iiBtiriknl iriHkltotM ki roubded oui «uh X c^
tquare coAuajcncv tcuaidiluaU'Eievaad norviBllraadomMJiipleKivriiai The -docunmtaiion ii virtiM bi a coJlet* P>a
f*uM laho ludM rou ih:r«utK ibe »vu<ii lati.
». ACAP p
utDicconip^Dcau aCaP a taiy Id kan and
1 a Later lane (oc einvtjein or nUuii. aCaP
ABOUT DYNACOMP
DYNACOMP b •. k*dln« diatribulot dI HtVtU irucffl toftoxjf wiih uJh ipiaflaini the world (cuxmillj bi «ccu
of 30 counlrin} Duriai ihe pan three yran »e ha*c p^cll^ tnllits«d tht DYNACOMP pmj jci line, but li*w
imintEioed mod unproved our h^h level of qualily and cuitnncT tuft^Ofl, The ai;hi^«neni In qiiaiiiy ti appaieni
Irocnoui- Eixany rrpcai cuitomen and the uirtwaxe le^iei'i in mch publioiiofti at CCMPUTRONICS, SO Soli '
wue Cniiquc. AN, A. LOG,, Solulk. Oealiv.? Compulini iwd KiVib*i»a DYNACOMP wft^arE ha2 ako
bera choien foi dnncralralion on network lekmioii, Our cunomer luppon ii ai clo« ai your photic. It ii
ahrari friendly. The lult u hitlily itamed and aJi^ayi wiUin^ lo dtsct;M pfoducii «■ i"^ advic*.
50
COMPUTE!
July. 1982, Issue 26
Figure 1. (cont'd)
Bvie index = 0
£
Bit mask index = 7
Inveri next bit in memorv
CHKSUM
(Catrulaie new
check-^um)
nven lesi bit in new checksum
ERROR
(Print error
informatiun)
( END J
^" ^y^cv checksum
initial checksum^
Invert test bit in memory
(to restore it)
Bit mask index =
Bit mask index - 1
Byte count =
Byte count - 1
B
No
Index = Index + I
Base address =
Base address + 256
program calls CHKSUM again, to get the checksum
for memory with one bit inverted, and inverts that
bit position in the checksum.
This invert operation should make the new
checksum identical to the initial checksum. If the
two checksums are not identical, the program
terminates by printing the bit position and address
where the error was detected. Otherwise, the pro-
gram reinverts the current test bit, to restore its
original state.
The remainder of the program involves a
series of three counter/index adjustment opera-
Figure 2: Checksum-Calculating Subroutine
(CHKSUM)
{ Surt j
Cycle count =
Initial byte count
Checksum base address =
Start address
Checksum = 0
Bvte index = 0
Checksum =
Checksum + Next bvte
ndex = Index + I
Ease address =
Base address -f- 256
Cycle count =
Cycle count - 1
Cycle "\^ No
count = 0?
Yes
{ Return J
► t
if you spend more than 6.6 seconds
of your valuable time reading this ad.
YOU NEED
SpeedRead +
• optimized Systems Software, the company that brought you BASIC A+ and OS/A+, proudly presents
another "PLUS".
• SpeedRead+ is the world's first speed reading tutor designed for use on your persona! computer.
• SpeedRead+ begirrs with training your eyes and mind to function as the incredible precision machine
they were meant to be.
• SpeedRead-^- goes beyond mere words — It trains you to recognize phrases and columns instantly — it
exercises your peripheral vision — it increases your comprehension.
• SpeedRead+ matches your pace — now and in the future.
AVAILABLE NOW!
For 16K ATARI" computers with disk, Introductory Price $59.95
Coming soon for APPLE II". Inquire about availability of TRS-80" and cassette versions.
SEE YOUR DEALER TODAY!
Call or write for a descriptive brochure of SpeedRead+ " and other fine OSS products, such as OS/A+,
BASIC A+, and TINY C".
ATARI, APPLE II. TRS-BO, and TINY C are trademarks of Atari, Inc.. Apple Computer. Inc., Radio Shack, and Tiny C
Associates, respectively. Speedfleacf+ is a trademark of Eagle Software and Optimized Systems Software.
Optimized Systems Software, Inc., 10379 Lansdale Ave, CuperHno, CA 95014, (40S) 146-3099
52
COMPUTH
July. 1982, Issue 26
tions, with each followed by a branch/no-branch
decision. In the first of these operations, the bit
mask index is decremented; if it is nonnegative,
the program branches back to invert the next bit.
Otherwise, the byte count is decremented; if all
bytes have been tested, the program terminates,
error free. Otherwise, the byte index is incre-
mented. The byte index is eight bits long, and can
hold values from 0 to 255 (decimal). If the incre-
mentation caused the byte index to overflow to
zero, the program increments the high order byte
of the base address, then branches back to reinitial-
ize the bit mask index. Otherwise, the branch takes
place with no change to the base address.
Figure 2 shows the flowchart for the checksum
subroutine, CflKSUM. This subroutine is called
from two places in the program: (A) it is called at
the beginning of the program, to calculate the
initial checksum, and (B) it is called from within
the main loop, to calculate a new checksum after a
test bit has been inverted. This second .source of
call requires the subroutine to maintain its own,
separate byte count and base address, so as not to
disturb the current values of these parameters in
the main program. In the flowchart, these "working"
parameters are labeled cycle count and checksum base
address, respectively.
To start, cycle count is set equal to initial byte
count, checksum base address is set equal to test
start address, and the checksum and byte index are
initialized to zero. The rest of the subroutine is just
one big loop. In this loop, the checksum is accumu-
lated, byte by byte, with intervening index and
cycle count adjustments. The loop is terminated
when alt bytes have been processed; that is, when
cycle count has been decremented to zero.
The Test Program
Now that you understand the criteria of the pro-
gram and its sequences, we can look at the program
itself. Program 1 shows the somce code for the
nondestructive test program, which was flow-
charted in Figure 1. Note that before executing the
program, the starting address must be stored in
locations 00 and 01 (00 holds low byte) and the
ending address must be stored in locations 02 and
03 (02 holds low byte).
Besides these four locations, the program uses
1 3 other zero page locations, as working storage.
These include six parameters that are used in the
main program — initial byte count (IBYTES), byte
count (BYTES), base address (BADDR), initial
checksum (CSUM) and temporary storage for the
X and Y registers (SAVEX and SAVEY), and two
parameters that are used in the checksum subrou-
tine, a working copv of the byte count (CYCLES)
and a checksum base address (CBADDR). Of these
parameters, only IBYTES and CSUM remain
unchanged throughout the program; all six other
parameters will change during execution.
Following these reserve equates come three
equates that reference subroutines in the AIM 65
monitor: CRLOW initializes the display and printer
to their START posidons; NUMA prints the con-
tents of the accumulator, as two ASCII digits;
OUTPRI sends one character to the print buffer.
Other 6502-based computers have equivalent
subroutines.
The actual code that follows is straightforward,
so you should have no problem following it if you
studied the flowchart in Figure 1. Some readers
may wonder why I chose to save X and Y in zero
page (locations SAVEX and SAVEY), rather than
on the stack, during the call to CHKSUM in the
main loop. There are two reasons why this was done:
1, The instructions used to save X and Y in
zero page execute eight cycles faster than
those to save X and Y on the stack (12 cycles
versus 20 cycles). If you consider that for each
byte tested, CHKSUM is called eight times -
once for each bit position - saving X and Y in
zero page saves 64N microseconds for an N-
byte test run.
2. We need to use the checksum contents of
the accumulator upon return from CHKSUM,
and a pull from the stack (PLA) always loads
the stack information into the accumulator. If
the 6502 had the instructions PHX, PHY, PLX
and PLY, the stack would have been the likely
place to hold X and Y, but unfortunately it has
no such instructions.
Programmers may also be interested in the
way the bit masks ate accessed by the EOR
BMASK.X instrucdons that follow the labels
INVERT and NXTBIT. The bit mask table,
BMASK (shown at the end of Program 2), is ar-
ranged by ascendinghii position. That is, the mask
for Bit 0 comes first, followed by the mask for Bit
I, and so on. However, this table is accessed in
descending order; Bit 7 is tested first and Bit 0 is
tested last. This allows us to initialize the bit mask
index to 7 (LDX #7 at label IBMSK), then decre-
ment this index until it goes negative. Otherwise,
working with a descending table and an incre-
menting index, the program would have to include
a CPX #8 instruction to make i;he done/not done
branch decision. By using the ascending table and
decrementing index approach we've eliminated
that compare instrucdon. Since the CPX #8 in-
struction executes in just two cycles, the difference
in approaches is not significant, but the backwards
access is a handy gimmick for your programming
bag of tricks.
i
i
E
■
ruLi
rRi
The word processing package that's EA$Y to use
Used on thousands of COMMODORES, the micro
computer that's EA$Y to operate f^^?
It's EA$Y to $ell and only sold through Dealers^
The reasons it's 7 ways EAJfeY
1. Screen layout matches printed document.
U'^t'M^:'^^'^-
^c?onemiluoa,Oq
^ /
2. Designed for stenographers and
secretaries to use.
3- Full choice over horizontal and
vertical spacing.
4. True inter-character proportional
spacing.
5. Multiple-user:- up to 8 screens
can be connected.
6. Full text communication i
between Wordcraft users J
with automatic error
recovery.
7. Comes complete with
comprehensive manual & -
self-pace training guide.
FOR INFORMATION, SO EA$Y TO WRITE OR CALL: ' , '
WE$T COA$T: CIMARRON
666, Baker Street, EA$T COA$T: COMPUTER MARKETING $ERVICE$
Suite 319 300, W. Marlton Pike,
Costa Mesa, CA. 92626 Cherry Hill, N J. 08002
Telephone: {714)6411156 Telephone: (609) 795 9480
54
COMPUTEI
July. 1982, Issue 26
Program 2 shows the code for the checksum
calculating subroutine, CHKSUM, which was
flowcharted in Figure 2. It follows the flowchart
closely, and needs no additional explanation. Pro-
gram 2 also includes the previously mentioned bit
mask table, BMASK, and the text for the er-
ror message.
This program will produce one of two mes-
sages. If the test memory is error free, the message
OKAY! will be printed, otherwise an error message
of the form BIT u OF LOG. aaaa will be printed. In
the error message, the bit position and address that
are printed identify the bit that was being tested
when the checksum mismatch occurred. It's po,ssi-
ble, of course, that inverting that bit actually caused
some other bit in the memory to be inverted, due
to crosstalk, so the printout position may not be the
actual culprit. One way of finding out is to rim a
second test, starting at the location following the
printout location; that is, rerim the test starting
at "aaaa+ 1 ."'
Execution Times For The Test Program
As you can see from the listings, the program
occupies slightly less than a page of memory; to be
exact, it occupies 245 bytes. Of even greater signifi-
cance, however, is the amount of time it takes to
execute. That is, the amount of time it takes to test
a selected portion of memory. In a test that I ran,
the program took just over foiu- minutes to check
out a 1 K portion of memory (1024 bytes).
At Inst I suspected that somelliing was wrong
with the program, but after a few calculations 1
became convinced that this was indeed a respectable
time, in light of what the program was doing. First,
consider that in a I K byte test, the CHKSUM sub-
routine is called 8193 times: once to get the initial
checksum, then once more for each of the 8 192 bit
positions in the 1024 byte test memory. The
CHKSUM subroutine takes 28 -t- (29 x N) cycles to
calculate the checksum for an N-byte memory, so it
takes 29,724 cycles (microseconds) for a 1024 byte
memory. Cranking out the math, we find that with
Ixclusive-ORsAnd Checlcsums
An exclusive-OR is a logical operation
in which two byte operands are com-
bined to produce a result byte with these
characteristics:
• For each bit position in which the oper-
ands are different (one is logic 0, the
other is logic I), the result will contain a
logic 1 .
• F(}r each bit position in which the oper-
ands are the same (both logic 0 or both
logic 1), the result will contain a logic 0.
These rules can be summarized as follows:
0000 1 1 1 1
© LOLO 1011
1010 OiOO
Contents of location $40 = $0F
Contents of accumulator =$AB
Result in accumulator =$A4
Bit Operand #1
0
0
1
1
Bit Operand #2 Result Bit
0 0
1 1
0 1
1 0
All of the popular 8-bit microprocessors
have an exclusive-OR instruction. In the
6502, it has the mnemonic EOR. The EOR
instruction operates on the contents of the
accumulator with an immediate value or a
value in memory, and leaves the result in
the accumulator.
For example, if the accumulator con-
tains the value $AB (where $ denotes hex-
adecimal) and location $40 contains the
value $0F, the instruction EOR $40 will
produce a value of SA4 in the accumulator.
The binary arithmetic looks like this:
Note what has happened here. The value
$0F in location $40 has caused the four low
order bits (0 through 3) to be inverted, but
has left the four high order bits (4 through
7) intact.
This shows one of the primary uses for
the EOR instruction: to invert some selected
bits, but leave all other bits unchanged. In
fact, the test program in this article uses the
EOR instruction to invert a single bit in
memory, by reading the appropriate me-
mory byte into the accumulator, then exclu-
sive-ORing it with a "mask" value that has
just one bit set to logic I . To invert Bit 7,
the program applies a mask value of
100000002 (180); to invert Bit 6, the pro-
gram applies a mask value of 0 lOOOOOO.j
($40); and soon.
The program in this article also uses a
series of EOR instructions to calculate a
checksum value. As mentioned in the article,
the checksum is the exclusive-OR of all
bytes being tested. For example, if locations
$0400, $0401 and $0402 are being tested,
the program will perform this type of
operation:
0010 noi
1010 0011
®0001 1000
1001 Olio
($0400) = $2 D
($0401) = $A3
($0402) = $18
Checksum = §96
July. 1982. Issue 26
COMPUTEI
55
8193 calls, the program spends about 4.06 minutes
in the CHKSUM subroutine!
Since the program is spending virtually all of
its time in the CHKSUM subroutine, the total
execution time of the program is directly dependent
on the efficiency of this subroutine. If any readers
have suggestions on how to streamline CHKSUM,
I'd be happy to hear from them.
Program 1 : Source Code for Nondestructive Test Program
LINE* ADDR OBJECT LABEL SOURCE
01-0010
2000
01-0020
2000
01-0030
2000
01-0040
2000
01-0050
2000
01-0060
2000
01-0070
2000
01-0080
2000
01-0100
2000
01-0120
2000
01-0130
0000
01-0140
0002
01-0160
0004
01-OlfiO
0004
01-0190
0006
01-0200
0008
01-0210
OOOA
01-0220
OOOC
01-0230
OOOE
01-0240
OOOF
01-0250
0010
01-0270
0011
01-0290
0011
01-0300
0011
01-0310
0011
01-0330
0011
01-0340
0200
38
01-0350
0201
A5
02
01-0360
0203
E5
00
01-0370
0205
85
04
01-0380
0207
85
06
01-0390
0209
A5
03
01-0400
020B
E5
01
01-0410
020D
85
05
01-0420
020F
85
07
01-0430
0211
E6
04
01-0440
0213
£6
06
01-0450
0215
DO
04
01-0460
0217
E6
05
01-0470
0219
E6
07
01-0480
021B
20
Bl
01-0490
021E
85
OE
01-0500
0220
A5
00
01-0510
0222
85
OA
01-0520
0224
A5
01
01-0530
0226
85
OB
01-0540
0228
AC
00
01-0550
022A
A2
07
PAGE 0001
02
THIS PROGRAM PERPORMS A NONEiESTRUCTI VE TEST
ON RAM MEMORYr BY CALCULATING A SERIES DF CHECKSUMS,
BEFORE EXECUTING!. STORE THE STARTING ADDRESS
AT LOCS. 00 AND 01, AND THE ENDING ADDRESS
AT LOGS. 02 AND 03.
IF THE TEST IS SUCCESSFUL!. AN 'OKAY!" MESSAGE
IS PRINTED, OTHERUISEt THE BAD BIT POSITION
AND ADDRESS ARE PRINTED.
USER-SUPPLIED PARAMTERS
START
END
)K=0
*-)K+2
>K--=*+2
STARTING ADDRESS
ENDING ADDRESS
J EQUATES FOR WORKING STORAGE IN ZERO PAGE
IBYTES
BYTES
CYCLES
BADDR
CBADDR
CSUM
5AUEX
SAUEY
*=* + 2
*==*+2
*=--*+2
*=*+2
*~*+2
*:=*+l
*==* + !
INITIAL BYTE COUNT
BYTE COUNT
WORKING COPY DF BYTES
EASE ADDRESS
BASE ADDRESS
INITIAL CHECKSUM
TEMP. STORAGE FDR X
TEMP. STORAliE FOR Y
FOR CHECKSUM SUBR.
REGISTER
REGISTER
S AIM 65 MONITOR SUBROUTINES
CRLOW =*EA13
NOMA =*EA46
OUTPRI =*F000
*=$200
SEC
RESET DISPLAY S PRINTER
PRINT Ar AS TWO ASCII CHARS,
OUTPUT A TO PRINT BUFFER
i BYTE COUNT = END ADDR, - START
ADDR, + 1
LDA
SBC
STA
STA
LDA
SBC
STA
STA
INC
INC
BNE
INC
INC
6ETSUM JSR
STA
LDA
STA
LDA
STA
END
START
IBYTES
BYTES
END+1
START+1
IBYTES+1
BYTES+1
IBYTES
BYTES
GETSUM
IBYTES+1
BYTES+1
CHKSUM
CSUM
START
BADDR
START+1
BADDR+1
IBMSK
LDY *0
LDX #7
CALCULATE INITIAL CHECKSUM
AND SAVE IT IN MEMORY
BASE ADDRESS = START ADDRESS
BYTE INDEX = 0
BIT MASK INDEX
56
COMPUTE!
July, 1982, Issue 26
01-0560
022C
Bl OA
INUERT
LDA
(BADDR)rY
01-0570
022E
5D DF
02
EOR
BMASKspX
01-0580
0231
91 OA
STA
(BADDR) fY
01-0590
0233
86 OF
STX
SAUEX
01-0600
0235
84 10
STY
SAUEY
01-0610
0237
20 Bl
02
JSR
CHKSUM
01-0620
023A
A6 OF
LDX
SAUEX
01-0630
023C
A4 10
LDY
SAMEY
01-0640
023E
5D DF
02
EOR
BMASKvX
01-0650
0241
C5 OE
CMP
CBUM
01-0660
0243
DO 39
BNE
ERROR
01-0670
0245
Bl OA
NXTBIT
LDA
(BADDR) cY
01-0680
0247
5D DF
02
EOR
BhASK^X
01-0690
024A
91 OA
STA
(BADDR) .Y
01-0700
024C
CA
DFX
01-0710
024D
10 DD
BPL
INVERT
01-0720
024F
C6 06
DEC
BYTES
01-0730
0251
E4 06
CPX
BYTES
01-0740
0253
DO 02
BNE
BCNTO
01-0750
0255
C6 07
DEC
BYTES+:l.
01-0760
0257
A6 06
BCNTO
LDX
BYTES
01-0770
0259
DO IB
BNE
INCIDX
01-0780
025B
A6 07
LDX
BYTES+1
01-0790
025ri
no 17
BNE
INCIDX
01-0800
025F
AO 00
LDY
*0
01-OBlO
0261
B9 70
02
OKLOOP
LDA
OKMSIjyY
01-0820
0264
20 00
FO
JBR
OUTPRI
01-0830
0267
C8
INY
01-0840
0268
CO 06
CPY
♦6
01-0850
026A
DO FS
BNE
OKLOOP
01-0860
026C
20 13
EA
JSR
CRLOU
01-0870
026F
00
BRK
01-0890
0270
20 4F
OKhSG
.BYT '■ OKAY!'
01-0910
0276
C8
INCIDX
INY
01-0920
0277
DO Bl
BNE
IBMBK
01-0930
0279
E6 OB
INC
BADDR+1
01-0940
027B
AC 2A
02
JMP
IBMSK
01-0950
027E
01-0970
027E
5 THIS
ROUTINE PRINTS
01-0980
027E
f AND
!>DDRESS AT WHIC
01-1000
027E
20 13
EA
ERROR
JSR
CRLOW
01-1010
0281
AO 00
LDY
#0
01-1020
0283
B9 E7
02
LOOPl
LDA
EMS6.Y
01-1030
0286
20 00
FO
JSR
OUTPRI
01-1040
0289
C8
INY
01-1050
028A
CO 05
CPY
#5
01-1060
028C
DO FS
BNE
LOOPl
01-1070
028E
8A
TXA
01-1080
02BF
09 30
OR A
#$30
01-1090
0291
20 00
FO
JBR
OUTPRI
01-1100
0294
B9 E7
02
LOOF'2
LDA
EMSG.Y
01-1110
0297
20 00
FO
JSR
OUTPRI
01-1120
029A
C8
INY
01-1130
029E
CO OE
CPY
«14
01-1140
029 El
DO F5
BNE
LU0P2
01-1150
029F
A5 10
LDA
SAUEY
01-1160
02A1
18
CLC
01-1170
02A2
65 OA
ADC
BADDR
01-1180
02A4
48
PHA
01-1190
02A5
A9 00
LDA
#0
01-1200
02A7
65 OB
ADC
BADDR+1
01-1210
02A9
20 46
EA
JSR
NUMA
; INVERT NEXT BIT IN MEMORY
f SAVE X AND Y IN MEMORY
r CALCULATE NEW CHECKSUM
p RETRIEVE X AND Y
; INVERT TEST BIT IN NEW CHECKSUM
f NEW CHECKSUM = INITIAL CHECKSUM?
y NO, PRINT ERROR INFO,
i YES, INVERT TEST BIT IN MEMORY
? NO, DECREMENT BIT MASK INDEX
y BIT MASK INDEX NEGATIVE?
; YES. DECREMENT BYTE COUNT
BYTE COUNT = 0?
YES. ALL DONEk UITH NO ERRORS
f NO. INCREMENT BYTE INDEX
y BYTE INnEX=0?
; YES. ADD 256 TO EASE ADDRESS
OUT THE BIT POSITION
^ THE MISMATCH OCCURRED
; RESET DISPLAY 8 PRINTER
f PRINT FIRST PART OF TEXT
f PRINT BIT PATTERN
y PRINT SECOND PART OF TEXT
5 ERROR ADDRESS = BASE ADDRESS +
INDEX
r PRINT ERROR ADDRESS
July. 1982, Issue 26
01-1220 02 AC
01-1230 02Ari
01-1240 02B0
68
20
00
46 E.-A
PL A
JSR
BRK
COMPUTfl
NI.)MA
S7
5 RETURN TO MONITDFi:
Program 2: Source Code for CHKSUM Subroutine
LINE* ADEiR OBJECT LABEL SOURCE
01
-1260
02B1
01
-1270
02B1
01
-1290
02B1
A5
04
01-
-1300
02B3
85
08
01
-1310
02B5
A5
05
01-
-1320
02 B 7
85
09
01-
-1330
02B9
AS
00
01-
-1340
02BB
85
oc
01-
-1350
02 BD
A5
01
01-
-1360
02BF
85
on
01-
-1370
02C1
A9
00
01-
-1380
02C3
AO
00
01-
-1390
02C5
51
oc
01-
-1400
02C7
C8
01-
-1410
02C8
DO
02
01-
-1420
02CA
E6
on
01-
-1430
02CC
A 2
FF
01-
-1440
02CE
C6
08
01-
-1450
02D0
EA
08
01-
-1460
02D2
DO
02
01-
-1470
0204
C6
09
01-
-1480
02[i6
A6
08
01-
-1490
02D8
no
EB
01-
-1500
02DA
A6
09
01-
-1510
02DC
DO
E7
01-
-1520
02riE
60
01-
-1550
02BF
01-
-1570
02DF
01
01-
-1570
02E0
02
01-
-1570
02E1
04
01-
-1570
02E2
08
01-
-1570
02E3
10
01-
■1570
02E4
20
01-
■1570
02E5
40
01-
■1570
02E6
BO
01-
1590
02E7
01-
1610
02E7
20
42
01-
1620
02EC
20
4F
01-
1630
02F5
ERRORS =
0000
END OF ASSEMBLY = 02F4
PAGE 0004
i THIS SUBROUTINE ACCUMULATES THE
', BY EXCLUSIVE-ORINS AI..L BYTES
CHECKGUHj
CHKSUM
ACCUM
nECCYC
CYCZ
LP A
STA
LDA
STA
LB A
STA
LDA
STA
LnA
LDY
EGR
INY
BNE
INC
LBX
nEc
CPX
BNE
nEC
LBX
BNE
Lnx
BNE
RTS
I BYTES
CYCLES
IBYTEBil
CYCLESil
START
CBABDR
START+1
CBADDR-f-l
#0
#0
<CBADDR) 1
DECCYC
CBADDR+1
**FF
CYCLES
CYCLES
CYCZ
CYCLES-H
CYCLES
ACCUM
CYCLES+1
ACCUM
; CYCLE COUNT := BYTE COUNT
> BASE ABDRESS = STAK'T ADnREBS
P CHECKSUM = 0
? BYTE INDEX =^' 0
', CHECKSUM =■■ CHECKSUM FOR NEXT BYTE
; INCREMENT INDEX
? INBEX = 0?
; YES. ADD 256 TO BASE ADDRESS
? NO. DECREMENT CYCLE CGUNT
f CYCLE COUNT = 0?
5 NO, GO PROCESS NEXT BYTE
5 YES. RETURN WITH CHECKSUM IN A
', MASKS USED TO INSERT BITS IN MEMORY
BMASK .BYT 1 » 2r 4 c 8 y *10 y $20 ? *40» $80
i ERROR MESSAGE TEXT
EMSO
.BYT
.BYT
• END
BIT '
OF LOC.
Q
Dealers - Reserve your copies of
COMPUTEIs first Atari and PET/CBM books
today, Call 919-275-9809 for ordering infornnation,
58
COMPUTEI
July, W82. Issue 26
A simple game illustrating a most sophisticated topic. The
idea 0/ recursive subroutines is one of the more complex
notions in progrinnmiug-a subroutine which is its oivn
subroutine. "Tonvrs of Brahma," a child's gnnie with
pegs (nul disks, is used to illustrate how recursion works
with versions here for FLU and Microsoft (Commodore,
Apple, OSI) and Atari BASICS.
Recursive
BASIC
Subroutines
Earl Wuchter
CatosauquQ. PA
Recursive (adj): of, relating In, or ronstiluting a procedure
ihal can repeal itself indefniiteh. or iiiilil a specified coudilion
has been met.
Subroutine (n): a sequence of computer instructions for
perfoniiiiig a specified task that can he used repeatedly iu n
program iir in differeul programs.
— Webster's New Collegiate Dictionary
Used together, these two words describe one of the
most powerful, and most fascinating entities in
progranmiing, but it is a rare bird.
Recursive siiljroutines ;>re most irsef ul in com-
piled languages, but are seldom allowed. On the
other hand, an interpreted language like BASIC
can't help but allow a subroutine to reenter itself,
but some serious ]iroblems must be overcome
before the technique is of any use.
The problem with BASK' is that all variables
are global. (When any variable is changed in a sub-
routine it is changed for the whole program.) To
see what is missing in BASIC, look at a f«// statement
and a subroutine statement in a typical compiled
language. The variables in jjaren theses are called
arguments or parameters:
CALL TRY (A,X)
SUBROUTINE TRY (A,Z)
When TRY is invoked, A and Z will take on
the values of A and X from the calling routine. On
return, A and X will receive the values of A and Z.
Even though both routines use the variable A, the
A in the calling routine will not be changed until a
rettn-n is executed. The status (global or local) oi
other variables is normally up to the progrannner.
BASIC subroutines do not have arguments.
The normal programming practice is to have the
calling routine assign values to subroutine variables
before the GOSUB is executed. To prevent a sub-
routine from inadvertently affecting any other
routine, we give it a set of local variables by using
names that cio not appear in any other routine.
A Solution to Passing BASIC Variables
Xow you can see the problem with recursive code.
How can we give a subroutine a set of \ariables
that are different from those in the calling roiuine
when they are one and the same roti liner-
There is a solution. We can create an array of
arguments and have each generation of the sub-
routine use its own "'row" in the array.
The Towers Of Brahma
The "Towers of Brahma" is one problem that is
best solved with a recursive subroutine. The solu-
tion, in turn, best illustrates the capability of recur-
sive code. The two seem to have been made for
each other.
This interesting mathematical problem is
often found disguised as a child's toy: a board with
Towers of Brahina
three pegs and four or five disks of varying diame-
ters that fit on the pegs. The disks are initially
arranged on the fitst peg in older of their diame-
ters, with the smallest one on top. They are to be
moved one at a time, always keeping the smaller
ones on top, luitil they are on the third peg.
When the recursive solution to this problem is
coded in the proper language, it is a thing of beauty.
A PL/I version of the subroutine is shown below.
This will be the model for a BASIC version. The
main routine is not shown. The main routine simply
inputs the number of disks and makes the initial call:
CALL MOVE (NDISKS,1,3);
Note: In this version of PL/1, arguments pa.ssed iit
as expressions bct:ome dunnnv argiunents and do
not change anything in the calling routine. Adding
zero to a variable makes it an expression without
altering its value. This feature provides for ex-
tremely compact code.
MOVE: PROCEDURE (N,F,T) RECURSIVE;
IF N = 0 THEN RETURN;
CALL MOVE {N-I,F + 0,6-F-T);
PUT SKIP DATA (N,F,T);
THE ULTIMATE RESIDENT PROGRAM MANIPULATION SYSTEM FOR PET^/CBM™ MICROCOMPUTERS
SO COMPLETE,
EVEN THE BEST OF
THE COMPETITION
DOESN'T COMPARE!
EXTENDED DOS SUPPORT
® [type "N" keyboi/d) These tomnandj may be UMid
< (typt "B" ktYioird) inlcrchmgj&IVj, to perform
E (original keybDard) I hc following dos support
> (for ''wedge' uicrs] functions.
Commind Function
^ DiKriiv^is^ ttifut/ lend command
'ON Format (header) a new difketfe
0! Force initialize diihctic
9V Validate diiJtelTc (colled)
^D Dupiitalcdi&kclls
^C Copy or toncatenate disk fjle[s)'
$R R«nam« file
93 Scratch f If (il*
®t L«« directory*
9U: Retet disk drive
iSL Utt dlik file Of BASIC program*
* Ad'ded'tnhantcd disk Command.
EXTENDED EDJTOR
Commind Function
/ Quick load frnm disk
* Quick load from diik iviih auto run
APPEND Append from disk to end of current prograi
AUTO AuiD line number (allowi header)
QLOAD Load machine language {binary) frlc
SRUN Load and execute machine language program
CHANGE Chang:e pattern ia another pattern
CLOSE Ooit one at all flics
CMD Set output 10 filefdoetnol send ^READY.')
DELETE Delete a range of lines from proeram
DUMP Dump all scalar variables to screen w file
EXEC Execute a file as keyt^oatd commartds
FIND FindoCCuiani;esof a pa Hern
GET Read a sequential file into editor
KEY Define a key a$ a ipeciaJ function
KEYS Turn key fu'^Ctions on
KILL Disable SYSRES"
KILL" Disable SYS RES" and unreserve memory
LIST Improved BASIC LIST command
LOAD Defaults To did drive
MERGE Mer^e from disk into cir^enl pro-am
MON Break to cufrent machinE language monitor
OLD Restore progi am after "NEW"
PUT Serid pro-am to diik as t«Rt f?le
RENUMBER Reriumbef all or pij-t of program
BUN Run cuffent program, ignorei screen garbage
SAVE Defairlls lo disk drive, allows reprice
SETD Set disk device ti, allows multiple drives
SETp S« I pr inief channel, format mode, paging
TRACE Select 1 of 5 trace/step mode* and speed
VE RrFY Compa/e crfreni program agaimi disk/tape
WHY Print pojiiion of last error
WHY> Ltil lifve of b. cak or error
■ Send oaipot lO primer
=* Display current version of SYS RES"
COMPARE SPECIFICATIONS!
SYSRES" POWER"
Number of ADDED commands
33
13
Number of IMPROVED BASIC commands
7
none
Number of DOS SUPPORT commands
11
none
Approximate added syntax options
1200
60
instruction manual length
86 pages
75 pages
Instruction manual style
structured
conversati
Re-loactable?
yes
no
Use on more than one (any) PET/CBM™
yes
no
Upgradable
yes
no
SYSRES" POWER"
yes
no
yes
no
yes
no
yes
no
yes
no
yes
no
yes
no
yes
no
yes
no
yes
no
yes
no
COMPARE FEATURESI
Automatic printer output?
Selectable ASCII conversion?
List programs without loading them?
Formatted program listings?
Dump SEQuential/RELative files?
Edit data files?
True program merge?
Auto number with AUTO TEXT?
Load machine language programs?
Auto-execute machine language programs?
Directory (menu) file commands?
COMPARE "EQUIVALENT" FUNCTIONSI
Function: Change ocGurances of one pattern to another.
Feature SYSRES" POWER"
Command word
'Wild cards' in search string?
'Wild cards' in replace string?
Selectable range?
Match in entire text?
Match in com mands only?
Match exact variable names?
Function: Define special one-key functions.
Feature SYSRES" POWER"
Command word
Requires BASIC program changes?
Destroys variables?
Re-define any key?
Maximum string length
Quotes and carriage-return allowed
Re-define any token key?
Retain user keys from program to program?
CHANGE
@
yes
yes
yes
no
yes
yes
yes
yes
yes
no
yes
no
KEY
REM
no
yes
no
yes
yes
no
255
73
yes
no
yes
no
yes
no
J UST A FEW OF THE FEATURES OF
SYSRES"
• Fast up/down scrolling which worksl
• Advanced repeat-key routine!
• Re-define any or all keys as any keyword
(full or short form) or as any string up to 255
charactors long!
• Auto line numbering which can feed a string
of up to 127 chirictors as well!
• Extended DOS support (re^juires DOS 2A or
greater)!
• Never enter another file namel All file
com nnands work from the directory!
• Supports multiple disk drives!
• List BASIC programs, sequential and
relative files without loading tliem into
memory!
' TRUE PROGRAM MERGE (overlay).
Supports subroutine libraries!
• Load and run machine language programs
with parameter passing!
» Supports multiple printers!
• Automatic printer output with paging plus
formatted listings with full ASCII code
conversion including cursor control and
special charactors for non-CBM" printers!
• Edit text files and assembler source code
without leaving BASIC!
• Renumber part of a program or even
change the order of lines!
• Over 700 FINO/CHANGE commands
including variable names ("A$" wilt not
match "BAJ"), pattern matching with
"wild-cards", and even commands to
remove spaces and REM's!
" Three TRACE modes mcludirg trace
variables!
' Does not affec! BASIC program operation!
'One AUTO-BOOT l>ISKETTE works for
ALL PET" or CBM" computers (BASIC 2.0
or greater with at least 16k of RAM.).
SYSRES' requires NO ROM SPACE or
extra boards^ so you can take It with you if
you want to use another computer. It may
be put above the screen If you have RAM
there. It boots automatically without
disturbing any program in RAM!
' if, for any reason, you are not satisfied
with the SYSRES" system, you may return
it along with any back-up disks (within 30
days) for a full refund. Your disks will be
erased and returned to you.
ni>kL'ttciinJ EM[,'ii^ivt- M.musil - itnly 59t
(Please specify disk drive model when
ordering.)
CALL US FOR THE NAME OF YOUR
NEAREST DEALER
We are pleased to announce the aquisltion of the author, Don Lekei, and the rights to SYSRES"". Don is now hard at work
producing versions of our STOCKFILE" series of integrated INVENTORY CONTROL, POINT OF SALE, ORDER
CANADA
Tel: (604) 984-0477
#6, 144 West 15th St.
North Vancouver, B.C.
Canada V7M1R5
ENTRY, and BILL OF MATERIALS packages for
the PET/CBM™ computers. The best Inventory control
system for the APPLE ] [ "" will soon be available for the
CBM". See your local dealer for details!
SYSRES" is a trademark of Solidus International Corp.
(POWER" is a trademark of Professional Software Inc.'
UNITED STATES
Tel: (206) 734-3744
#204, 4202 Guide Meridian
Bellingham, WA
U.S.A. 98226
SOLIDUS INTERNATIONAL CORPORATION
60
COMPUTfl
July. W82. Issue 26
Brief Definitions
Some of Ike terms used in this article might he unfamiliar.
Here's a short description of the main ideas:
CODE — Refers to the statemenls, ihe lines, or the
entirely of a program, as in the phrase "there's an
error in yom" code at line 1 10." Also used as a verb, as
another word for programming: "I'm coding a
suiiroutine."
COMPILED LANGUAGE- Unlike BASIC (an
interpreted language) there are three steps to getting a
program to run when you're working with a compiled
language: I . Write it. 2. Compile it. 3. Run it. After
you write the program, a separate program called a
compiler translates what you've written into a form of
machine language. This residts in a program which can
then be executed (nm).
Some examples of compiled languages are
FORTRAN, COBOL, and P17I. The lan'guage the
program is written in (step I , above) is called the
source lunguage and when you finish typing it you've
got not surprisingly, ihe source program. Step 2 is
where you instruct the compiler to "examine" and
transform the source program into an exetittabk (it
can be executed) program called the object or target
program.
You can write, easily read, and easily modify
source programs, but you can't run llieni. Object
programs, on the other liand. do run, but they are
difficult to read (they're not written in words like
PUT IF I HEN DECXARK, but rather m machine oi
as.sembly language.)
INTERPRETED LANGUAGE -Step 2 (above) does
not take place in an interpreted language. There arc
only two steps to writing an interpreted language
program (BASIC is an example): I . Write it. 2. RUN
it. However, while the program is RUNning, a sepa-
rate program in the computer is "interpreting" the
meaning of words like PRINT and INPUT. In other
words, the computer slows down somewhat white the
interpreter decides what PRINT means and just what
kind of PRINT is involved (te) the screen, the printer,
a disk filer). Then the interpreter sets up pointers
and flags and variables and momentarily sends control
to the machine language subroutine (in a library of
such subroutines) which can do a PRINT.
All of this translating and interpreting is going
on dining the RUN of the program. It's obvious why
interpreted programs tend to RUN more slowly than
compiled programs. On the other hand, because you
can write it/RUN it, it is easier to test jsarts of a pro-
gram immediately and make the necessary changes w
the program itself. Debugging is easier siinply because
the program vou write is the same program that vou
will RUN.
PARAMETER PASSING - This generally refers lo
the ways that variables are made available to several
programs at once, (or, if the \ariables are local, to
several parts of the same program at once). For
example, if the variable CASH "holds" 15.98, we
might want to "pass" that \alue ( 1 .").9H. the parameter)
to another program. Some computers will cancel all
variables when a new program is LO.'VDed into RAM
inemoiy. How can the 15.98 be "passed" to the new
program?
Likewise, if variables are local, the value of ('ASH
will be different in subroutines from what is in the
inain body of the program unless 1 5.98 is "passed" lo
the subiouiines.
Passing parameters is handled in different ways
depending on which computer or language is being
used. C^ompiled languages often allow you to put the
variables in parentheses on the same line as a C.\LL
to or RETURN from a subrotuine. The example
CALL SUBS (CASH, fOTAL) pusses the values of
CASH and TOTAL to the subroutine SUB?>. It can
later pass variables hack lo the main routine in the
same way, using parameters (also called argumeuls).
PL/I - A "high level" language (as opposed to lower
level, closer to machine language) which combines
attribiues of FORTRAN and COBOL.
DUMMY ARGUMENTS - Parameters which have
no effect other than to take up st)me necessary space.
An example is the FRF.( I) statement in Microsoft
basic; where the value within the parentheses can
be anything. It's just there because the computer will
not recognize FRE().
NESTING — When something is contained bv some-
thing else. FOR I = I FO 10: FOR | = I lO 2: NEX F
J: NEX'F I. This J loop is said to be «mW within the
I loop.
STACK - The computer must be able to renietnber
"return addresses." 100 tiOSUB r>00 will turn over
control to whatever is on line .")()0, but e\entuallv
there will be a RETURN. So, before GOSUBbing.
the "address" to RE'FURN to is |>ut on the computer's
.Kiack and later pulled off the stack by RETURN.
There is a limit to how many retiun addresses can be
pushed on the stack. Fhis is normally no problem
since most subroutines go right back via RE'I URN.
relieving the slack ol the address number. Recursive,
self-calling subroutines, however, aren't RETURNing.
It's GOSUB-GOSUB-GOSUB, etc. Unless the recur-
sion is carefully managed, the slack could quickly fill
with return addresses and is then said to overfloie.
f( Skyles Electric Works
Epson-PET/CBM Graphic ROM Pack
For PET/CBM Owners Who Want:
Complete Program Listing Printouts
Complete Screen Grapfjic Printouts
Grapfiic Printouts From Programs
on your Epson Printer
Order the Skyles Electric Works EPSON-PET GRAPHIC ROM Package. The ROM when installed in an EPSON MXBO, HXeOFT,
or MXlOO with Graftrax Plus printer will reproduce most of the PET/CBM graphics characters. Most importantly
when using the accompanying high speed machine language program, the Epaan-PET Graphic ROM pack gives a
complete program listing with all screen controls shown (cursor, home, clear, etc.). This high speed machine
language program for program listing, screen image printout (screen dumps) and BASIC program controlled
printing (i.e. PRINT ) automatically translates the PET-ASCII characters to the EPSON-GRAPHIC ROM characters. A
BASIC sample program and PRINT subroutine, that may be incorporated into any existing BASIC program, completes
this "complete solution" package.
EPSON HDOEL ROM MODEL
MX7D Not Available
MX80 (serial no. to 359999) EPG8Q (EPG82, 3 ROM Version)
MXBO (serial no. after 360000) EPG81 (EPG83, 3 ROM Version)
MXBOFT EPcer
MXeO Graftrax Not Available
MXBO Graftrax Plus EPGaG+
MXBOFT Graftrax Plus EPGaG+
MXIOQ Not Available
MXIOD Graftrax Plus EPG10G+
The Epson-PET Graphics ROM Pack has been designed to furnish you with PET/CBM graphics printing in the easiest
way possible. This is done by furnishing a high speed machine language program that is "hidden" at the top of
your PET/CBM memory. = 3 r ^ k
The machine language program serves 3 major functions.
1: Translates PET-ASCII code to ASCII code for program listing.
2: Translates screbn code to ASCII code for screen image printouts.
3: Translates PET-ASCII code strings to ASCII strings for normal program printout. This feature may also be
used for making ASCII files for your disk or tape recorder.
INSTALLATION: installs into your Epson printer
PRICE: Epson-PET Graphics ROM Pack EPG80, EPG81. EPQ8F $75.00
Please specify your Epson printer model type and and serial number when ordering.
For all PET/OBM's BASIC 2.0/Revlslon 3, or BASIC 4.0
AVAILABILITY: Immediately from your LOCAL DEALER
or
VISA, MASTERCHARGE ORDERS CALL (800) 227-9998 (except California residents)
CALIFORNIA ORDERS PLEASE CALL (415) 965-1735
— 231 E South WKisman Road
Skyles Electric Works Mountain view, ca 94041
(415) 965-1735
62
COMPUTEI
July, 1982, Issue 26
CALL MOVE (N-l,6-F-T,T + 0);
END MOVE;
The BASIC- pifigram has arrays for variables
N, F, and T. Variable G serves as the index to liic
arrays. C) represents the niniiber of nested
GOSUBs. Tlie subroutine inci'ements G on eacli
entry and decrements it on each return, therebv
keeping count of its cnvn geneiatioii nunii)er.
Argiinieius are passed to the next general ion by
putting vakies inio the arrays at (G+ I) before eacli
GOSL'B. The variable G is alwavs the ciurent
subscript for anv generation oi'the subroutine.
This method ol' using arrays requires that you
know l)elbreliancl uliat the inaxiimmi nesting
depth will be in order to dimension the arravs.
This numi^er is a function oi the problem, but niav
be limited by the BASIC interpreter.
Solving 21 Disks Would Take More Than Eight Days
The program rinis in less than 2K. The iiiteinal
stack size of my PET restricts the mmiber of disks
to 2 1 . When 1 tr\ to run more than 2 1 I get an
"Olf rOF MF.MORY" message. Your system may
allow more or less, but don't expect to run this
many disks t{) completion. Fhe time re(]uired to
complete 21 disks (at a rale of approximately three
moves per second) will be more than eight days,
and one more disk \vould double that.
The BASIG program here shows the moves to
be made, along with a plot of the nesting level
made down ilie left side of the screen. Eacli increase
in the length of the plotted line indicates a GOSL'B.
Each decrease in length indicates a RETURN. You
can see a more detailed view of the process by
replacing the plot with a printout of the cinrent
array variables.
39 N(G + 1)=N(G)-1
40 F(G + 1)=6-F(G)-T(g;
41 T(F+1)=T(F)
42 GOSUB 31
43 G=G-1
44 PRINT LEFT$ (P$,G}
4 5 RETURN
Program 2. Atari Version
11 DIM H<22>.F(22).T(£2>.P$(20>
12 P$=" H 1 + h — "
13 ■"' "N DISKS (1 TO 2rV';:IHPUT T^t-KIJ^T
14 IF T<1 OR T>21 T^EN 13
15 F(1>=1
16 T(l>=3
17 QKUB 31
15 DCi
31 G=G+1
32 IF G 1\€.H ? Pf<LG>
33 IF 1KG)=0 T^B^ 43
34 tXG+l)=hKG:-l
^ F(G+1>=F(G)
36 T(G+l)=b-F(G)-TCb)
3? GOSUB 31
38 ? /'DISK #";tKG);" FROfl ".:F<G>/' TO "
jT(G>
39 ^•KG+l)=f^(;G)-l
46 F(G+i:'=€-F(G>T(G)
41 T(G+i:=T(G)
42 GOSUB 31
43 G=G-1
44 IF G T^€H ■': F'$<1.G>
45 FfTURH e
Program 1. Microsoft Version
10 REM TOWERS OF BRAHMA (RECURSIVE)
11 DIM N(22) ,F(22) ,T{22)
12 P$ = " + + + + — "
13 INPUT"N DISKS (1 TO 21) ";N(1)
14 IFN(1)<1 OR N(l)>22 THEN 13
15 F(l)=l
16 T(l)=3
17 GOSUB 31
18 END :::::::::::::::::::::::
31 G=G+1
32 PRINT LEFTS (P$,G)
33 IF N(G)-0 THEN 43
34 N(G+1)=N(G)-1
35 F(F+1)=F{F)
36 T(G+1)=6-F(G)-T(G)
37 GOSUB 31
38 PRINT TAB(19) "DISK#"N(G) "FROM"F(
G) "TO"T(G)
MEMOREX
FLEXIBLE DISCS
WE WILL NOT BE UNDER-
SOLOn Call Free (800)235-4137
for prices and information. Dealer
inquiries invited and C.O.D, s
accepted
PACIFIC
EXCHANGES
100 Foothill B!vd-
San Luis Obispo, CA
93401. InCal. call
(800) 592-5935 or
(8051 543-1037
-= Santa Cruz Educational Software ' Tricky Tutorials * Santa Cruz Educational Software ' Tricky Tutorials * Santa Cruz Educational Software * Tricky
u
3=
ATARI (tm) GRAPHICS AND SOUND MADE EASY!
»
«:
SANTA CRi;Z EDUCATIONAL SOFTWAflE HAS WRIHEN A SERIES OF AFFORDABLE PROGRAMS THAT DEMONSTRATES MANY OF THE S
SPECIAL "TRICKS" THAT ONLY THE ATARI 400/800 COMPUTER IS CAPABLE OF DOING. WE OFFER EVERYTHING FROM A PROGRAM ^
THAT DOES FANTASTIC HIGH HESOLUTION GRAPHICS TO ONE THAT ACTUALLY DIALS YOUR PHONE ^
S ••••••••••••••••••••••••••••••••••••••••••••••••*•*•*••••*•• =
MASTER MEMORY MAP(lm) - rh<s is really Ihe key !o us-
ing the ATARI'S capattllties. We start out by explaining
tiow 10 PEEK and POKE values inio memory so tfiat even
nev* programmers can usettiis. Ttien: we give you over 15
pages of ttie iriemory locations that are the most useful. The
information is condensed from both the ATARI 'S Operaling
System Manual anO various articles and programs. It is. of
course, useful even (or experienced programmers as a
reference. Also, we highly suggest thai dealers offer ttiis
Memory l\*ap io Customers who request to be told how to
' use the power of Itie machine. We guarantee it will answer
many of the questions you have atwul the machine,
S6.95
TRICKY TUTORIALS(tm)
i1: DISPLAY LISTS — This program leaches you how to
alter the program in Ihe ATARI that controls the format of
Ihe screen. For example: when you say graphics 8 the
machine responds with a large graphics S area al the top of
the screen and a small text area at the bottom. Now, you
will be able to mix the various modes on the screen al Ihe
same time, JusI Ihink how nice your programs could looli
with a mix of large and small text, and both high and low
resolution graphics, this program has many examples plus
does all of the difficult caluculations! S19,95
12: HDRIZONTAL/VERITCAL SCROLLING - The inlorm-
alion you put on Ihe screen, either graphics or texl. can be
moved up. down or sideways. This can make some nice el-
lects You could move only the text on the bottom half of the
' screen or perhaps create a map and then move smoothly
over it by using the joystick S19.95
#3: PAGE FLIPPING - Normally you have to redraw the
screen every time you change the piclure or text. Now you
can learn how to have the computer drawlhenexipageyou
want to see while you are slill looking at the previous page
then Hip to it instantly. You won't see it being drawn, soa
complicated picture can seem Io jusI appear. Depending on
your memory size and how complicated the picture, you
could Hip between many pages , thus allowing animation or
other special effects with your text, J19.95
#4: BASICS OF ANIMATION - Shows you how to animate
simple shapes using Ihe PRINT and PLOT commands, and
also has nice little PLAYER/MISSILE Graphics demo to
learn. This would be an excellent way to start making your
programs come alive on Ihe screen. Recommended for new
owners $19.95
#S: PLAYER MISSILE GRAPHICS - Learn to wnte your
own animated games and business applications! The
Tutorial begins witti many small examples that complement
the SO page manual, then gradually builds up to a com-
plete game as everything you need to know is explained
fully. Also included are two machine language routines that
you can use to animate Players from Basic, Next we in-
clude one of the best editors currently available, one for
Ptayfield shapes, and one for Player shapes. All of the ex-
amples and games run with 16K Tape or 32K Disk. The
h«o utilities require 32K to run. $29.95
Tricky Tutorials (except #5} require 16K
memory for cassette orders and Z4K for disk.
The price is $19.95 each. Tricky Tutorials §1
to 6 in a notebook cost only S99.95, a $30
savings.
THE GRAPHI CS MACHINE! I - Turn your computer into an
incredi ble graphics tool with advanced commands like ci r-
cle.box, fill, polygon, line, help, etc, 3 colors in graphics 8
with instant text!'! Create colorful business charts or
tieautilul drawings and then save or retrieve them from
disk in 5 SECONDS- VES, it's that fast Needs all t8K.
disk, and costs SI 9.95
MINI-WORD PROCESSOR - This Is for those ot you who
have a printer, but don't want to spend $100 or more tor a
fancy word processor. It is suitable fcr simple erJiting of
text, accepts most control characters for your printer, and
text IS stored on disk (or easy retrieval Holds 2'h typed
pages at a time. Requires 32K, disk or tape, $19.95
BOB'S BUSINESS - t4 small business type programs (or
home or olfice, all chosen from a nice menu. Supports
printed output, 169 sectors ol output require 16K tape or
32Kdisk S14.95
KID'S »1 - Includes the lollowmg: 1) TREASURE -
search lor the lost treasure while trying to keep trom (ailing
into the sea. Nice graphics il you lind it!; 2(0IALOGUE —
talk back to the computer about (our subjects: 3) MATH
QUIZ — Nice musical and graphical rewards (or good
scores. Parents input the level ot difHculty
KID'S 12 — A spelling quiz, a "scrabble' type game, and
a version ol Touch with llie computer giving all Ihe direc-
tions' Both Kid's programs require 16K tape or 24K disk
and cast S14.95each
MINI-DATABASE/DIALER ~ This unique new program
stores and edils up to 8 lines ol intormation such as name,
address, and phone numbers, or messages, inventories or
anything you want. It has the usual sort, search, and print
options, but 11 also has an unusual feature it your tiles in-
clude phone numbers and you have a touch-tone phone.
Ihe program will DIAL THE PHONE NUMBERS FOR VOU'
This is perfect lor Ihose who make a lot of calls like
salesmen, teens, or those trying to get through to busy
numbers (acts as an aufo-redialerj. It is also a lot of lun Io
use Requires tBK cassette or 24K disk and costs SZ4.95
FONETONE - For those who only want to store name and
phone numbers and have the dialer (eature as above, we
Oder this reduced version. Same memory requirements,
but only costs $14.95. Don't forget you must have a touch-
tone phone.
PLAYER PIANO — Turns your keyboard into a mini-piano
and mare. Multiple menu options provide Ihe ability to
create your own songs, save or load data liles using
cassette or diskette, fix or change any ol up to 400 notes in
memory, and play all or part o( a song , The screen displays
Ihe keyboard and indicates each key as it is played trom a
datafileorthenofesyauIypeYoudon'thavetobeamusi-
clan Io enjoy this educational and entertaining program.
Requires 24K cassette or 32K disk. JT4.95
BOWLERS DATABASE - Provides Ihe league bowler with
the ability to record and retrieve bowling scores providing
permanent records. The data may then be analyzed by the
program and displayed or printed in summary or detail
form. Data may be stored on cassette or diskette and up-
dated quickly and efficienlly. The program proivdes such
inlormation as highest and lowest scores by individual
game, (lirsl, second, and third games throughout the
season), high and low series, current average, and more.
The program listing and documentation provided are a
tutorial on ATARI basic and record keeeping. Requires 16K
for cassette or 24K for disk. J14.95
*7: DISK UTIUTIES TUTORIAL - This Tutorial both offers
you several programs to aid in the use of your 810 Dis(<
drive, and teaches you how these utilities were written at
the same time. The utilities included are a Menu program,
a Disk inspector (look at sectors on the disk), a Disk Direc-
tory printout program, a Format utility to quickly format
large numbers of disks, ant) a utility that allows your pro-
grams to start njnning by just turrjing on ihe 810
(Autorun.sys). Requires 32K of memory and costs only
S29.95
»
S
#6: SOUND — From explaining how to create single notes,
to demonstrating complex four channel sound effects. Ihis
newest tutorial is great Even those experienced with
ATARI'S sound capabilities will find the menu of sound ef-
lects a needed reference that can be used whenever you
are in the need ot a special sound (or your programs.
Everyone will learn something new! Written by Jerry
While {19.95
SANTA CRUZ EDUCATIONAL SOFTWARE
542S Jigger Dr. , Soquel, CA 95073
C.O.D. Orders call (408) 476-4901 •
'include S3.00 postage |$t.00 tor Memory Map) '■
*ln CalHornia, include 6.5% tax I
Visa and MasterCard Accepted j
Santa Cruz Educational Software * Tricky Tutorials * Santa Cruz Educational Software * Tricky Tutorials • Santa Cruz Educational Software * Tricky '
SEE YOUR LOCAL DEALER
on
ORDER FROM:
64
COMPUTE!
July. 1982. Issue 26
o
A Monthly Column
Friends Of The Turtle
David D. Thornburg
Associate Editor
A Froctal Of My Former Self...
As I was going lo Si. Ives,
I met a man vviih seven wives.
Each wife carried seven sacks;
And in each sack was seven cats;
And with each cat was seven kits.
Kits, cats, sacks, and wives.
How many were going to St. Ives?
It you remember this puzzle from your childhood
you probably remember that the answer is one.
Well, that mav nol be very excititig; but suppose
vou arc walking to St. Ives and you want to know-
how far it is from some other location — Here, for
example. Tlie first thing we might do is look at a
map.
From the tuap we see that St. Ives and Here
arc both coast towns located near bays. In between,
the coast juts out to sea.
Figure 1.
TT-^T T^-TT.
5T .
How long is the coastline lieivveen the lowtis ol
Here and St. Ives? If we set a pair of dividers to
span the distance between the two tow^ns we get
one measurement. This distance is one kilometer.
Figure 2.
51 .
But this path doesn't take us along the coast. If
we set oiu- dividers to measure in units of 1/'^ of a
kilometer, we can trace a path which more closely
follows the coastline.
Figure 3.
A
/
I
MERE
5T .
IVE5
By cotuiting each 1/'^ kilometer increnicru we
can see that this path is 4/S kilometer in length.
Next, let's .set the dividers to 1/9 of a kilometer and
measure the distance again.
Figure 4.
-
A
A
A
MERE
IUE5
This looks more like the actual coastline and
gives us a distance of 16/9 kilometers. Since we
re])laced each straight line in Figure ?> with a replica
of Figure 3, we can see that the length of the coast
in Figure 4 can be written as 4/3 * 4/3.
Now let's set the dividers to 1/27 of a kilometer
and measure again.
THE
"^^ "^BIG MATH
ATTACK"
Challenging new math program . . .
Sharpen your skills by entering the correct answer
before the equation 'lands' on your city! Provides
hours of educational entertainment "^- PQW'
Features:
• Full color
< High resolution graphics
< Animation
• Sound
> Four math functions (+, ■. X. -^)
m Two levels for each function
Recommended for grades I 6. Available for thie ATARI & APPLE IL
ATARl 16K (cass.) S20.00
ATARI 24K (disk) S25.00
Requires ATARI BASIC cartridge
APPLE II (disk) DOS 3,2/3,3 525.00
Requires Applesoft Basic in ROM.
Ask for it at your local computer store.
or order direct:
^.H.E.S.I.S.
PO, Box 147
Garden City. Ml 48135
{313)595-4722
Please add:
SI 50 shipping tiand:lintj
51,50 CO.D-
WRITE FOR FREE CATALOG
DEALER INQUIRIE.S WELCOME
MICROMATH
revolutionizes the
teaching of math!
MicroMaih is itie only fuH. one-semester course
of Its kind in NoMti America and is highly praised by
instructors who use it.
Grade 8 to Collsgs Level
MicroMatti is a complete review mathematics
course rthictl will be of value to students from Grades
to college level.
93 Lessons, 16 Tests, 150 Page Workbook
Students can choose trom 93 separate lessons
(eacli with pretest and lesson} and wor1< comfortably
at ttieir own speed, with peers or individualiy. Each
unit has its own post-iest and ttie entire package is
suppiememed with a ISO page wofktjook.
Runs on COMMODOfiE PET 16K and APPLE II +
Versions are available lor all DOS formats.
S500 for Complete Package
A demonstration disk, consisting of 8 sample
lessons and 2 tests, is available for only S25 (refun-
dable upon purchase of complete package).
For more Information:
tVrire- Mr. e.H. BangaY
^m SHERIDAN COLLEaE
Sw Trafalgar Road
LOGO
©M.I.T.
Kreirs LOGO lor APPLE II*
Includes: our new low price and
1. Two copies of Krell's LOGO for Apple II*
2. A UTILITY disk containing M.l.T.'s extremely valuable dem-
onstration material, a series of pre-defined shapes whicti may be
substituted for the LOGO TURTLE, and Krell's timesaving library
of pre-defined procedures. °
3. ALICE IN LOGOLAND, a twenty program tutorial series for
intermediate and experienced programmers new to the LOGO
language.
4. The technical manual LOGO for Apple 11* by H. Abelson &
L. Klotz. This is the official tectinical manual issued by M.I.T.
5. LOGO FOR THE APPLE II* by Harold Abetson, Byte Books. A
complete instructional manual tor intermediate and advanced
users of LOGO.
6. THE ALICE IN LOGOLAND PRIMER, a step by step, lavishly
illustrated introduction to LOGO for those who are new to tiotli
programming and to LOGO, (available in May and sent free to
all purchasers of Krell's LOGO for Apple II*).
7. A comprehensive wall chart that portrays, explains and graph-
ically illustrates the LOGO commands in action.
8. A one-year's tree subscription to the LOGO & EDUCATIONAL
COMPUTING NEWSLEHER. (Regularly S30.0D per year). A new
authoritative source of Information about the structure, classroom
application and capabilities of LOGO, plus an up to the minute forum
on the most significant new ideas and issues in educational
computing. $149.95
College Board SAT* Prep Series
TRS-80. APPLE, PET, ATARI, CP/M, PDP-11 Based on past
exams, presents material on the same level of difficulty and in
the same form used in the S.A.T.
S.A.T., P.S.A.T., N.M.S.Q.T. - Educator Edition set includes
25 programs covering Vocabulary. Word Relationships, Reading
comprehension. Sentence Completion, and Mathematics. $229.95
INDEPENDENT TESTS OF SAT. SERIES PERFORMANCE SHOW
A MEAN TOTAL INCREASE OF 70 POINTS IN STUDENTS' SCORES.
GRADUATE RECORD EXAM Series - Educator Edition includes
2B programs covering Vocabulary, Word Relationships. Reading
Comprehension, Sentence Completion, Mathematics, Analytical
Reasoning. and Logical Diagrams. $269.95
Micro-Deutsch
MICRO-DEUTSCH set Includes 24 grammar lessons, covering
all materials of an introductorv German course Four test units
also included. Grammar lessons use substitution transform-
ation drills, item ordering, translations and verb drills. Drill
vocabulary based on frequency lists. Suitable tor use with
any high school or college textbook. Extensively field tested
at SUNY. Stony Brook. APPLE*. PET*. S179,95
Isaac Newton + F.G. Newton
Perhaps the most fascinating and valuable educational game
ever devised - ISAAC NEWTON challenges the players to
assemble evidence and discern the underlying "Laws of
Nature"' that have produced this evidence. Players propose
experiments to determine il new data conform to the "Laws
of Nature" FULL GRAPHICS NEWTON • presents all data
In graphic form. This game is suitable for children. Players
may select difhculty levels challenging to the most skilled
adults. Both Games S49.95
Krell Software Corp.
"The Slate of (he Art in Educational Computing"
1320 STONV BROOK ROAD ■ STONY BROQK NV 1I79U rjlb! Jb] •j\:][i
KrdI SohTAarp Carp has mi nffi^^irt] iii,^ wj(h ihn fdlt*^!- f nirdmf r.namiOrtlnin
Board or ihf Kdurarinnal Tpstiny Sfn.-Mf KreSJ is, h<»itrtVf, <i >uppli*i ul pntducl*
lo ihe R T S N Y S rfsirf*'nls sdd iaips fdx
PROGRAMS AVAILABLF FOR IMF. TRSSO, ^PFU ]|. PFT & ATARI
'TradFmark% i>t Apple Cump Carp, Tandy C«irp . t iiinniiKlnn' Ciirp . Atfln t ofji
66
COMPUTE!
July. 1982. Issue 26
Figure 5.
differences between these two languages.)
Apple LOGO Atari PILOT
-■V
: .". .' >. .I'l.
ST .
IWES
I'his brings us even closer to the coastline and
gives us a distance of 4/3 * 4/3 * 4/3 or 64/27 kilo-
meters ~ more than twice our original estimate.
By now it sliould be obvious that each lime we
reduce the setting of our dividers by 1/3, the path
lengtli increases by a factor of 4/3. If we were to
walk along the coast by following every nook and
cranny, the distance vv(nild be 4/3 * 4/3 * 4/3 * 4/3 *
4/3,... etc. In other words, the length is infinite.
The reason for this is that each part of ihc
coastline is an iidlnite set of replicas of the overall
shape slrown in Figure 3: If you weie U) look at a
high magnification view of the coastline it would be
just as bumpv as a lower magnification view.
Real coastlines don't have infinite lengths, of
course, but our imaginary coastline does becaii.se it
is made from a type of sell -similar curve called a
fractal. Mathematical exj^ressions of this type iiave
been known for some lime but were not studied
much because mathematicians thought their prop-
erties were too slrange. For an insight into just how
stiange ihese functions are, you might want to look
al the book Fmrluls: Form, CJunicr, and Dhnnisioii by
Benoit Mandelbrot (Freeman 1977). This book
discusses the pnjperlies of curves such as the one I
chose for the imaginary coastline. This function is
called a Triadic Koch curve and was discovered by
von Koch in the early 19()()"s.
Mandelbrot's book provides an interesting
glimpse of this strange mathemadcal world, but is
quilc frustrating in that he doesn't sliow the reader
how to express these curves so that a computer
could draw them.
Have yoti guessed that the turtle might hold
the key to drawing fractals?
First, let's look at Figure 3, since this is the
basic building block from which all tlie other curves
are made. A procedure for creating this figure is
shown below in both Apple LOGO and .A.tari
PILOT. (This also lets you see the similarities and
TOFO :SrZE
FORWARD :SIZE
LEFT 60
FORWARD :SIZE
RIGHT 120
FORWARD :SIZE
LEFT 60
FORWARD :SIZE
END
*F0
GR: DRAW#A
OR: TURN -60
GR: DRAW#A
GR: TURN 120
GR: DRAW#A
GR: TURN -60
GR: DRAW#A
E:
li you move the turde to the left edge of the
screen and turn it to face right, then, by using the
procedine FO, a replica of the curve in Figure 3
should appear oti your display. For a line length of
S 1 units (a good size for Apple LOGO) you would
type FO 81 . In Atari PILOT vou might want to u.se
a line length of .'>4 units (because of .screen resolu-
tion differences between the Atari and Apple
graphics). To do this, jusi ivpe:
C: #A = 54
U: *F0
and you should see a curve similar to that in
Figure 3.
Now, what about F^igure 4"-' In our coastline,
each straight line section is replaced with a copy of
P'igure 3 which has been reduced by one-third.
Let's call the procedure lo do tliis FL
Apple LOGO
TOFl :S1ZE
FO :SIZE/3
LEFT 60
FO :SIZE/3
RIGHT 120
FO :SIZE/3
LEFT 60
FO :SIZE/3
END
Atari PILOT
*F1
U: *F0
GR: TURN -60
U: *F0
GR: TURN 120
U: *F0
GR: TURN -60
U: *F0
E:
Sup|v)se we next want to draw the next level
of this ciuve. All we need Uj do is create a copy of
FI (called F2) in which references to FO are replaced
bv references to FL Each time this procedure is
used it will use F! wliicii will use FO. II \'ou follow
this process a few more times, you might make a
procedure called F20 which uses F19, and so on.
How far do we need to go? If our original
curve (Figure 3) u.sed a line length of 27, for exam-
ple, then each line should be 9 units long for Fl ,3
units long for F2 and I unit long for F3. Since ihe
display can't show lines less than 1 dot long, it
hardlv makes sense for use to try to make this
cmve wiili anv finer resolution.
In a future column we will show how LOCK)
lets you create these curves with just one procedure.
Meanwhile, vou can test vour abilities by using a
different figure as a starting pattern:
July, W82. Issue 26
COMPUTEI
67
Figure 6.
Bcciuisc ol'the 90 degree turns in this ligiire,
those of yoii uilli VVSFN will also be able lo make
this fractal cmve.
Mere is llie first iirocediue vou will need:
Apple LOGO
Atari PILOT
TOFO ;SIZE
*F0
FORWARD
:SIZE
OR:
DRAW #A
LEFT 90
GRr
TURN -90
FORWARD
:SIZE
GR:
DRAW#A
RIGHT 90
GR:
TURN 90
FORWARD
:SIZE
GR:
DRAW # A
RIGHT 90
GR:
TURN 90
FORWARD
:SIZE
GR:
DRAW # A
LEFT 90
GR:
TURN -90
FORWARD
:SIZE
GR:
DRAW # A
END
E:
In W'SI'X von would create the proeedine *A
this way:
= *A(F6Rr2RF2RF6RF)
(You might want lo have the turtle move forward
more vvitli each ste)j for the first few levels so you
can see what is going on more easily.)
Here is what you should get for your final
picture:
Figure 7.
Keep experimeniing with (Jther patterns — and
lei inc know how you are doing.
i'l'iciitls i)j tlir riii/lc
P.O. Box I y 17
Iju .Mlfu. CA 9f()22
Good news for kids of all ages . . .
Robby looks great in color.
UOGIC
Communications Corp.
713 Edgebrook Drive
Champaign, IL 61820
(217) 359-8482
Telex: 206995
SubLOGIC is pleased to announce
the release of 4 new programs for the
Atari® 800™computer:
AT-AG1 (arcade game)
ROBBY THE ROBOT CATCHER
Baby robots are falling from the skies. Catch them if you can. 32K
AT-FA1 (fantasy adventure)
ADVENTURE ON A BOAT
Go fishing for points in the waters of Fantasy where anything can happen. 32K
AT-FA2
GHOSTLY MANOR
Find a magic key lo defeat the evil spirits, before they can do the same .
to you. 32K
AT-FA3
THE BLACK FOREST
Explore the Black Forest in search of the life-giving waters of Amrita. And
beware of demons along the way. 48K
High Quality, Pure Fun . . .
for anyone who is young at heart. S24.95.
See your dealer.
For direct orders add $1.50 and specify UPS or first class mail. Illinois
residents add 5% sales tax. Visa and MasterCard accepted.
68
COMPUTEI
July, 1982. Issue 26
How to uwvc and rotate objects on screen. These ideas toe
adaptable la many computer frrafihirs jiroblems and can
case llic task of creating gatncs, simulatious, etc. An Atari
and Camtiiodorc version are presented as complete pro-
grams and the author describes the modifications necessary
Jor other computers.
Screen
Graphics
Ian Pouil
Rochester, NY
Many computer sinnilat ions and tranics use lijraphics
lo represent a mathematical event or model in the
piogram. In a lunar lander program, for example,
(he lander position is first ealeulated bv the model
(taking operator input into ac fount) and then
displayed. Anoilicr simulaiion niigiil cakulaie Itovv
a machine or robot should be responding to com-
puter control, and then graphically displa\ this
infornialion.
I'rograms of these general ty]>es can benefit
(torn graphics routines which can illustrate an
object at any location on a video screen (translation)
and at any angle (rotation). The BASIC program
presented here uses a 2;") x 40 screen area to displav
a user-generated figure at any location and angle
thai the screen can re[)reseiil.
The screen is treated as an X Y coordinate
system, with the X axis running from left to right,
the \' axis running from lop lo boliom, and the
origin (0.0) located at the uppei' left ctjrner. (See
Kigin-e 1.) The plotting routine is the main section
which can be mociified. Hi"iefl\\ line 1 060 clears the
screen. Line lOSO computes the metnoiy adch"ess
to be POKPxI. from the X and Y values comptited
elsewhetc. The I'OKF.d adflress is the screen posi-
tion which will be tuined on. Line 1090 insiues
that only points on the screen will be POKKd. This
line iTiay i:)c deleted for slightly faster running lime
ilvou are sure lo always remain on screen.
Lines 1070 lo I 1 10 form a loop that plots all
points in the figure lo be displayed. For computers
with continuous memory mapped display, you mav
need to change ihe values of SS (screen slart ad-
flress), SL (screen end address), RL (row length),
and the character code lor a completely lit cell (100
ior Ihe PKf, line 1 100). The I'LL can supi)orI
greater resolution (50 x 80) with additional sofi-
wai-c. re]iiacing the PLOL subroutine. (See refer-
ences I and 2.)
Visible Errors
Xote ihai flue to t lie coarseness of the displav,
rolaled lines will often ap|)ear war[jed. I'his is
because, with only a limited number of points on
the screen to choose Irom, ihe computer must pick
points as close as it can to the spot where ihe point
should go. often resulting in visible error. This
The ten point example
does one rotation in little
more than one second.
program is thoroughly REMarked, so the u.ser
.should have little rlifficuliv changing or omitting
stalemcnls lo suit his particular needs or
computer.
The subroutines actually doing the graphics
manipulations begin at line 830 for rotation and
970 for translation. Since translation is simpler,
let's look at it firsi.
In moving a point from one spot on a gra]jh lo
another, the X and Y processing can be handled
separately. (Sec Figure 2.) In i ravelling from point
X|), Y|), to X|, Y|, the difference in X (shown as
AX) is simply added lo X,,, and ihe difference in
Y, a negative value in this example (shown as AY),
is added to Y(). For this single poinl iranslalion,
then:
X,=Xo + AX
Y,=Yo+AY
Subroutine 970 performs these additions for
each Iranslalion of X and Y, for each point in the
figine, and replaces ihe old X and Y values for
each point with the new values. It al.so keeps a
running total on the X and Y translation, lo be
used in the Rotation subroutine. Also, the Plot
routine is called here to display the new. translated
points.
'Lhe Rotation subrouline at line S;^0 is more
complicated. Lhe relationship between an existing
poinl (X,i, Y(,) and the new computed point (X,,
Y]) can be expressed as:
X| = Xq cos (a) - Y(, sin (a)
Y, — X„cos (a) + YqCos (a)
where a is the angle of rotation. For details on the
derivation of these relationships, see reference 3.
The Method Of Rotation
'Liie.se equations describe rotation ol a point about
the origin. On initial entry of data for the pattern
to be displayed, coordinates are chosen so the axis
of rotation is at the origin. Then, if we later wisli to
the battle for the moons of Jupiter
Blast your way through the alien mine
fields! Defend the moonbases from an
attacking alien armada! It won't
be easy. To win you will need to
mount a heroic assault on the
alien mother ship.
Moonbase lo combines three
exciting arcade adventures in
one exciting game. The machine-
language program by John
Konopa uses advanced graphics and
sound effects. Action is fast and exciting —
varying levels of skill required to go
from one part of the game to the next.
BEYOND software's arcade-
adventures are the next generation in
computer games for the ATARI®
computer. A voice-activated
program will help you meet and
overcome the challenge — it may
be an alien invasion, a fiendish
murderer preying on a country
village or a treasure trove buried
deep in the shark-infested sea.
Moonbase lo is available at fine
computer dealers. Or, directlvfrom PDI
for $29.95 plus $2.00 shipping and
handling.
Requires 24K ATARI® computer with disk and cassette.
Cassette version available soon.
Program Design, Inc., 11 Idar Court, Greenwich, CT. 06830 203-661-8799
ATARI'" i^ a rcgisit-rfd tradtmark of Atari. |nc
CALL TOLL FREE
800-424-2738
u^r>
ATARIA
PROGRflm
/TOR€~
From Synapse (C]
TTiere's trouble in the barnyard, and this machine-
language, arcade game will challenge even the most
experienced arcade player. You try to help Ma Hen save
the eggs and chicl<ens from the wi ly fox. The action gets
faster and faster as eggs turn into chicks, feathers fty,
chickens squawk, and ali bedlam breaks loose. You'll
rsaliy have to think fast to outwit this fox.
FROGGER
REAR
GUARD
From On Line Systems
Based on arcade game Frogger. Dodge traffic and Jump
the moving logs in the stream to get home. Fantastic
graphics.
16KTape $|»^ ^a'y<.^%/ <8KTapeorDlsk ^^ ^yaA^^%f
NOWTHROUGH AUGUST 1 ONLY: . . . PAY JUST S2a96 NOWTHROUGH AUGUST 1 ONLY: . . . PAY JUST S27.96
By Neil Larimer from Adventure I nt.
Aspace bailie be tweenyourcrulserandwave-after-wave
of enemy ships. You can destroy them with your energy
darts or you can ram them — as long as your shields are
intact. The action takes place on a continuous horizontal
landscape, You control the altitude and speed of your
craft as you pursue the enemy. Skill level 1 is excitina
and there are four more levety available. <?. -^ -, sf /
tSKTape tj>«6 ,yU^^/i(
NOWTHROUGH AUGUST 1 ONLY: . . . PAY JUST J1S,96
24KDis)( S^^
NOWTHROUGH AUGUSTI ONLY . . . PAY JUST J19.96
LANGUAGE
TEACHER
By Cindy and Andrew Bartonllo from Acorn
Learn the basics of a foreion language. LANGUAGE
TEACHER offers hundreds of word combinations, verb
conjugations and phrases. There is an option for having
multiple-choice answeis and for being netested on
missed items. Full printer capability and a great deal of
"human engineeririg" further enhance ttie pnDgrama.
Teachers v/iil appreciate the ample documentation arA
the ability to get printouts of quizzes. Cun-ently avaliabie
languages are: French, and Spanish. Italian & Gemun
available soon.
32KOisi<s $29.95 for each program.
By Bill Budge from Budgeco
An exciting, challenging Video pintiail simulation game
for from one to fouf players. You get adva/icatf game
leatums found only In stateof-the^rt electromechanical
pinbali machines. There's full coior graphics, animation
and sound effects, seeming to occur simultaneously.
Choose from "Easy" or"Hard" games. Grea! Graphics!
32KOisk
TEMPLE
OF
APSHAI
From Autonrated Simulalions
The first of the DujonOyest series, and sliit one of the
most popular. In exploring over 200 rooms In the magical
labyrinth, you will encounter more Ihan 30 kinds of
fearsome monsters guarding over 70 treasures. Some of
the treasures will help you in your quest, but you must
still watch out for the nnany monsters and traps that
spring out from the walia and shadows.
32KTapeorDt3k $29.95
SpeedRead^
From Optimized Systems
Improve your reading speed and comprehension at
home with a shori practice session eacit day. Offers 4
modes for reading: (1) Single phrase for developing
phrase recognstion at high reading speed; (2) double
phrase recognition at high speed; (3) random phrase for
peripheral vision; (4) column phrase for newsptapers and
magazirves. Start a! Iieglnnlng level and proceed St your
own pace. Choice of 3 classical texts.
ISKDiSk S59,96
By Warren Schwader & Ken Wllliams
You, alone, can save the Earth Federation from the
lawless atiens who roam our galaxy, Not Only have these
invaders been attacking our home planet—they're aiso
raiding our space colonies! Space travel has become
Increasingly dangerous, as has friendly trade. But
supplies must go thnaugh. As the pilot of the Federation
fighter THRESHOLD, it's all up to you! High resolution
graphics and sound plus "save the game" feature.
40KDisk $39,95
An InteriogicfTM) Adventure
Your greatest adventure awaits you in the GiBat
Underground Empire of Zork ! You'll face perils and
puzzles as you try to escape from Zorlc I wilh the Twenty
Treasures and your life. You'll experience challenges In
their most realistic sense— you can communicate In
complete seirfences with the largest vocabulary and
range of command optkms anywhere. Challenges
change as you make your rjwves. Beware mysterious
obiects and beware the Thlefi "Save the game" feature.
32KDIsk $39.95
Zork II also available $39.95,
CONTROLLER
DEADLINE
^nmvmm'im
An Infoeom (TM) Adventure
You have only 12 hours to solve the mystery of the dead
man and the locked door—or the killer wilt strike
agaln...and this time, you may be the victim! Working
from an actual dossier on this clever and baffling critrve,
you must piece together the many clues and watch out
for the suspects— one of Ihem Is the killer! Use complete
sentences and more than 600 worris of vocabulary.
"Save the game" feature.
32K,
.$49.95
From Microcomputer Games (Avalon Hill)
you are the air traffic controller who must make quick
decisions. ..or you might cause a mid-air crash and lose
hundreds of lives! Ali actions are in REALTIME— aircraft
will maneuver, use fuel and respond to your commands
as a real piane would— the computer won't wait for you.
Aln;raft are plotted on realistic "radar scope." Heading,
velocity and altitude displayed on separate chart. Select
up to 8 planes: choose from 3 types with 3 levels of
difficulty.
WKDtsk $29.95
POOL 1.5
By Hoffman, St Germain & Morock fnsn IDS
A remarkable actton-almulatlon of the real thing, this
program allows full contn^i of your "cue-stick" for
english, aim and control Play four different types of
pool at your choice of table speed, whh "instant replay"
of any shot! HI-RES color graphics are used throughout
this reaMime game.
48KDisl( $34-96
Visit our other stores; Seven Comers Center • Falls Church, VA & W. Bell Plaza • 6600 Security Blvd. • Baltimore, MD
QS TO ORDER CALL TOLL FREE 800-424-2738 caii (202) ses'sTg?
THE PROGRAM STORE
4200 Wisconsin Avenue, NW, Dept. U207 Box 9609
Wasliington, D.C. 20016
MAIL ORDERS: Send check or M.O. for total
purchase price, plus $1.00 postage & handling.
D.C, MD. & VA,: add sales tax. Charge cards:
include all embossed infonnation on the card.
Qet the most from your micro with
software and accessories from one
of the worid's largest selections.
/Pi
X
GALACTIC
CHASE
Fram Spectmm Computers
An all machine language arcade game that combines
ctiallenging play with great graphics and sound. Insect-
like alien ships form ranks above you, moving back and
forth as (hey ready their assault, Suddenly they start
breaking formation to swoop down on you, the lone
defender. Fight them off witli swiff missies...un!ii their
invisible ray slows your missiles down. May be played by
1 or 2 players, with two skill levels.
leKTape ,
.^fle
32KDisk.
■ ^^
THE
PROGRAM STORE
Summer
Arcade
Madness
ACTION QUEST
From JV Software
You are the ghost of the mansion In tills arcade
adventure. Using your joystick, you move through the
rooms in nuest of prizes. You must elude monsters and
solve puzzles along the way. Oeiterity and reasoning
skills are required to be successful in this fasl-moving
CALL TOLL FREE
800-424-2738
PROTEaOR
NOWTHROUGK AUGUST 1 ONLY: PAY JUST
;fZl,*^2a^^ $19J6(16KTape(
'y^^-^^ $23,96 (32K Disk)
:^a*^;2o%/
game.
IBKTapeorDlsk ^^S
NOWTHROUGH AUGUST 1 ONLY: , . , PAY JUSTS2a96
From Synaiae Software
The planet's inhabitants are endangered byamalevolent
alien that beams them to his ship and transports them to
an active volcano. You must pick them up onfrty'Ons
with your rescue/attack ship and .transport them to
anolherclty whiledodging lasers and rough terrain. After
you save as many as possible, the volcano erupts. You
must (hen rhove each person to a volcano-proof vault In
the mountains ! Great graphics and sound in this arcade
game.
KKTape .fe*4 32KDIS'' ^P"*^
NOWTHROUGH AUQUST1 ONLY: PAY JUST
<> ^ <? --1 oy / *1B^(32KTap«)
,,.^)i:Z4^^(-> /O .' S22.00 (32K Disk)
CAVERNS
OF
MARS
¥A
By Greg Christ ensen from APEX
An awaitl-winning arcade garrw that will challenge your
skill for many, many plays. You command the fighter
Helicon VII on a mission to Invade the Uaitian high
command. Trie head<)uarter3 are kscated deep In the
caverns, so you must descend through radar, rockets,
laser gates, and space mines to reach your destination.
Once there, you activate the fusion bomb and try to get
out before It detonates. Good luckl Joystick required.
16KTape $29.95
f 6K Disk J37.95
DeKoven & Connelley from MIndToys
A unique new approach to computer gaming.
RICHCX;nET combines diabolical strategy with fast
action to yield agame that satisfies your Intellect as well
as your senses. You have 6 playing pieces to move
arou nd, plus 2ball launchers. Each turn consists of either
repositioning the pieces or launching a t>all. Poinis are
scored each time the ball ricochets. Simple? Deceptively
so. Easy to master? Definitely not! 1 or2 players.
32K Disk S1935
K-RAZY
HOCKEY SHOOT
From Gamma Software
A high.3peed video action game for 2, 3, or4 players. You
use joysticks to control the players, The offensive player
with the puck and the nearest defensive player are
automatically assigned to a joystick; Players not so
controlled become "smart" players who play
automatically. The action Is fast and furious, the color
graphics and sound are realistic. Perfect for family
entertainmenL
laCTapeof Disk $29,95
SHOOTIIMG GALLERY
our
By John Harris from On-Llne
it you like arcade games with action, you'll love
JAWBREAKEfl. Guide your chompers through a
candystore maze, eating "wifesaveis" as you go. You are
pursued try variously colored "smiiiss," determined to
knock your teeth out. Eat a Jawbreaker and the "smiiles"
turn to biue"ftownies," and you can eat them! It's one of
the best examples of Atari graphics and sound we've
seen...you'li love iti
16KDIakofTape S!ft95
From K-Byle
Qet this collector's item while you can: It's the first non-
Atari game In a ROM cartridge. Just slip the cartridge
into the slot and you can instantiybe playing this action-
packed arcade game, The object is to move your Space
Commander through the Allen Control Sectors, shoot
the Allen Drolds and escape from the sectors. The
sectors are a maze of passages and barriers that can be
used for protection, but don't let your commander touch
them— they're electrified!
ROM Cartridge, , ..., $49S5
LUNAR
LANDER
GHOST
HUNTER
From Analog
A remarkably rBalistIc shooting gallery, complete with
carnival music. Use your joystick to shoot at moving
owls, rabbits, dudra, and c!ay pipes. Hit stats and
targets for more shots. It you can shoot them all, you'l!
get a try at the raging bear, if any ducks fly south, Itiey'll
eat yourbuiiets. Great family fun.
From Arcade Plus
The exciting haunted house maze game where you miisl
get the ghosts before they get you! When you eat the
pulsating "energizers," the ghosts start pulsating and
become vulnerable to your attack- 51 different game
variations keep things interesting. Play alone of In the
"head-lo-head" mode.
By t/Vail, Moncriel & Jesseofrom A.I.
Grabyour Joystick and sweat out the touch-down ofyour
LEM. Choose from four lunar landscapes, with many
choices for landing sites. Select a moredlfficult site and
get rTHJiB points— If you can land successfully. You have
complete contn:)l of your LEM via main engines and
small side thrusters, and five successful landlrvgs are
heralded with a patnotic event. Great fun !
24KTape H4.95 32K0i3k S2a95
EASTERN
FRONT 1941
ByChrisCtawfoKJtromAPE
A map-liased simulation of Operation Bartwssa, the
German Invasion of Russia A complex and accurate war
game, EASTERN FRONT pits you, as German
Commander, against the terrain, the weather, and the
Russian forces. Good use of colorful graphks and
sound, and wail written documentation make this game
a winner!
16KTape J21.95 Disk $24.95 ISKTape $29.95 18KDisk $34.95 16KTapeor32KDIsk.
.$29,95
pTHE PROGRAM STORE ' Pept. U207 Box 9606 • 4200 Wisconsin Avenue, NW • Washington, D.C. 20016~'
Item
Price
L
Postage
Total
$1.00
name
D CHECK a VISA
□ MASTERCARD Card #
address,
city
state
zip .
. Exp.
rj
72
COMPUTEI
July. 1982. Issue 26
rotate about Uiis axis after the figure has been
translated elsewhere on the screen, we must first
translate tlie figure back to the origin, do the rota-
tion, and then iraiislaie back to where the figure
had been. Naturally, these intermediate steps are
n(jt displayed on the screen.
The pattern of points whicl^ makes up the
displayed figure is in the DATA statement of line
230. The first number is an X value, next comes its
associated Y value, and so on initil all points are
described. Fhe sequence in whicli points are de-
scribed here is the sequence with which the)' will be
plotted. (See Figure 3.)
Before branching to the R() I ATION sub-
routine, the following variables must be initialized;
NP = Number of points in displayed pattern.
lA = Incremental angle of rotation, in
radians.
AX, AY = Absolute X and Y values that the
axis of rotation has been translated from the
origin.
XP (NP), YP (NP) = Arrays containing X Y
coordinates.
Before branching to the Translation sub-
routine, you must initialize:
XT, YT = Value of X and Y translation.
NP, XP (NP), YP (NP) = As before.
Note that AX and AY are normally updated in
the Translation subroutine and should be set to
zero at the start of the program.
VV^hen entering this program, the user can, if
desired, omit all REMarks, since there are no
branches to RL-IM statements. When running the
program, the figiue will first appear in the upper
left of the screen, partially hidden by the screen
edge and wrapped around the display. Pressing
the numeric keys translates the figiu'e, a lop-sided
plus sign, according to the standard scheme of
Figure 4. In addition, pressing the zero will rotate
the pattern 15 degrees counter-clockwise, and
pressing the five will rotate 15 degrees clockwise.
As with most BASIC programs which manipu-
late graphics, these routines work slowly with large
numbers of points. The ten point example does
one rotation in little more than one second. If the
program must rotate quickly, either the incremental
angle of rotation can be increased, or sections of
this program can be rewritten in machine language.
References
1) High-Resolution Plotting for the PET,}. Sherburne,
Micro No. 10, March 1979, Machine lansuage routine.
2) Workbook 3, Total hiformation Services, Basic rouliiic
for hi-res. plotting, PET.
3) The Mathematics of Computer Graphics,]. Posdamer,
Byte Vol. 3, No. 9. Sept. 1978.
Notes For Atari Users
The Atari version of this rotitine closely
parallels the PET version. Instead of screen
POKEs, ordinary X,Y PLOTting is used,
and instead of using the numeric keypad to
generate the values for the translation
routine, this program uses a joystick to
move (translate) the figure around the
screen. The less-than "<" and greater-than
">" keys are u.sed to rotate the figure. Be-
cause of the general nature of this program,
it can be run in Applesoft BASIC with only
minor changes, such as changing
GRAPHICS 3 -I- 16 to GR ; COLOR 1 to
COLOR = 1 . TRAP to ON ERR GOTO,
GET # 1 , A to GET A$: A = ASC(A$), etc.,
and using the keyboard, paddles, or a joy-
sdck to get the values for XT and YT ( 1 ,0,
or-I).
Other Machines:
If your BASIC supports X,Y PLOTting,
use the Atari version as a guide, otherwise
modify variables SS, SE. and RL in the
PET/CBM version if you have a niemory-
mapped text display. (See the article for
details.)
Figure 1.
0,0
X Axis
->
PET SCREEN
25 Rows (Y)
40 Columns (X)
^
It's Herel The computer strategy
Game with Bounce!
For:
Apple
Atari
TRS-80
Have you ever seen a fast action
game combined with the intense
strategy of chess, backgammon or
Othello? Ricochet...the first abstract
strategy game designed exciuslvely
for the computer owner... is both.
And loads of fun!
You and your opponent each have
six opposing blocks to maneuver and
two launchers to fire. Your shots rico-
chet off the blocks, changing their
position with every hit, while earning
you points on the way to their targets.
The longer your shot ricochets, the
more points you get.
You don't have to play alone, either.
Play against any of four different com-
puter opponents, (each a different
personality), or another human. Five
game variants to choose from— each
requires a different strategy
Ricochet is truly competitive. . . if you
want it to be. A "smart clock" lets you
put more pressure on your opponent
by forcing him to play faster than
you. But you've got to win two out of
three (or three out of five) games to
claim victory
Your computer rates you after each
match, so you can compare your mas-
tery of the game with that of other
players. In the long run, you're trying
to rack up points for your personal
Ricochet Rating.
Get Ricochet now at your local
dealer for your Atari, Apple or TRS-80
Suggested retail price: $19.95.
Another Mind Toy
Prom^nyx
K W coMPun
COMPUTER GAMeS
THINK£R5 RtAY
L
•APPLE, ATARI and TRS-80 are trademarks of Apple
Cornputer Inc., Atari, inc. ano Tandy Corp.. respectively-
1981, AUTOMATED SIMULATIONS, INC.
P.O. Box 4247, Mountain View, CA 94040.
74
COMPUTE!
July. 1982, Issue 26
Figure 2.
AX
* *
AY
■^X
"•X„Y,
i Xq , Y^
Y
Figure 3.
0,-4
AXIS OF
ROTATION
0,-2
-4,0
-2,0
0,0
2,0
4,0
6,0
■^x
0,2
Coordinates of each box
are placed in DATA statement
0,4
4^
Y
PET NUMERIC
KEY PAD
— ^ Arrows show direction
of motion when
corresponding key
is pressed.
Program 1. Commodore Microsoft Version
100 REM 2-D GRAPHICS SUBROUTINE DEMO
110 REM BY IAN PAULL
120 PRINT" {CLEAR}": REM CLEAR SCREEN
130 DIM XP(10) ,YP(10) :REM ENLARGE FOR MORE '
POINTS
140 REM INITIALIZE
150 POKE 59468, 12 :REM PUTS PET IN STANDARD "
CHARACTER MODE
160 NP= 10 :SS= 32768 :SE=33767:RL=4 0:AX=0:AY=0
170 REM NP=NUMBER OF POINTS; SS=SCREEN STAR
T ADDRESS; SE=SCREEN END ADDRESS
180 REM RL=RQW LENGTH; AX, AY=ACCUMULATED X "
AND Y VALUES (NET XLATION SO FAR)
190 FOR KZ=1 TO NP:REM READ FIGURE COORDS
200 READ XP{KZ) ,YP(KZ)
210 NEXT KZ
220 REM DATA BELOW ARE FIGURE COORDS. FORMA
T FOR EACH POINT IS X,Y
2 30 DATA-4, 0,-2, 0,0, 0,2, 0,4, 0,6, 0,0, 4, 0,2,0
,-2,0,-4
240 GOSUB 1060:REM PLOT
250 GETAS:IFA$=""THEN250:REM LOOPS UNTIL AN
INPUT
260 A-VAL(AS)+1:REM CONVERTS STRING INPUT T
0 NUMERIC VALUE
270 ON A GOTO 290,370,420,470,520,330,570,6
20,670,720
280 REM CCW ROTATE, FIXED ANGLE 15 DSG
290 IA=-(15/360)*(2*) :REM_=PI
300 GOSUB 780:REM ROTATE ROUTINE
310 GOTO 250
320 REM CW ROTATE, FIXED ANGLE 15 DEG
330 IA= (15/360)* (2*) :REM_=PI
340 GOSUB 780:REM ROTATE ROUTINE
350 GOTO 250
360 REM XLATE DOWN AND LEFT
370 XT=-1
380 YT=1
390 GOSUB 970:REM XLATE ROUTINE
400 GOTO 250
410 REM XLATE DOWN
420 XT=0
430 YT=1
440 GOSUB 970:REM XLATE ROUTINE
450 GOTO 250
460 REM XLATE DOWN AND RIGHT
470 XT=1
480 YT=1
490 GOSUB 970:REM XLATE ROUTINE
500 GOTO 250
510 REM XLATE TO LEFT
520 XT=-1
530 YT=0
540 GOSUB 970
550 GOTO 250
560 REM XLATE TO RIGHT
570 XT=1
580 YT=0
590 GOSUB 970
600 GOTO 250
610 REM XLATE UP AND LEFT
620 XT=-1
6 30 YT=-1
640 GOSUB 970
650 GOTO 250
660 REM XLATE UP
670 XT=0
July. 1982, Issue 26
COMPUTEI
75
680 YT=-1
690 GOSUB 970
700 GOTO 250
710 REM XLATE UP AND TO RIGHT
720 XT=1
730 VT=-1
740 GOSUB 970
750 GOTO 250
7 60 REM ROTATE CONTROL
770 REM FIRST, XLATE TO ORIGIN
780 FOR KZ=1 TO NP
790 XP(KZ)=XP(KZ}~AX
800 YP(KZ)=VP(KZ)-AY
810 NEXT KZ
820 REM DO ROTATION ABOUT 0,0
830 SA=SIN(IA) :CA=COS(IA)
840 FOR KZ=1 TO NP
850 KN=XP(KZ)
860 XP(KZ) =KN*CA-YP{KZ) *SA
870 YP(KZ)=KN*SA+YP (K2) *CA
880 NEXT KZ
890 REM XLATE BACK
900 FOR KZ=1 TO NP
910 XP(KZ)=XP(KZ)+AX
920 YP(KZ)=YP(KZ) +AY
930 NEXT KZ
940 GOSUB 1060: REM PLOT
950 RETURN
960 REM XLATE
970 AX=AX+XT:REH KEEP TRACK OF ABS X
980 AY=AY+YT:REM KEEP TRACK OF ABS Y
990 FOR KZ=1 TO NP:REM SHIFT X AND Y
1000 XP(KZ) =XPCKZ)+XT
1010 YP(KZ)=YP(KZ)+YT
1020 NEXT KZ
1030 GOSUB 1060: REM PLOT
1040 RETURN
1050 REM PLOT
1060 PRINT" {CLEAR} ":REM CLR SCREEN
1070 FOR KZ=1 TO NP:REM FIGURE ADDRESSES TO '
BE POKED
1080 LOC= (SS+RL*INT(YP{KZ)+.5)+INT(XP(KZ)+.5
))
1090 IF LOC<SS OR LOOSE THEN NEXT KZ:RETURN
:REM DON'T POKE OFF SCREEN
1100 POKE LOC,160:REM LIGHT CHARACTER CELL A
T SCREEN LOCATION 'LOC
1110 NEXT KZ
1120 RETURN
1130 END
Program 2. Atari Version
110 OPEN #L4.0/'K"
120 GRAPHICS 3+16
130 Din XP(10>A?<10):REri ENLARGE DIMENS
ION FOR MORE POINTS
140 REM INITIALIZE
160 AX=0:AY=0 = l^a^l0:pI=3. 1415927
170 REM NP=NlfBER OF POIhrTS
190 FOR K2=l TO hlP
200 READ T=XP(KZ)=T^READ T:t?<KZ)=T
210 NEXT KZ
220 REM DATA 3EL0W ARE FIGURE COORDS
225 REM FORM FOR EACH POINT IS X.Y
230 EWTA -4>0.-2i9.0j8.2.Q.4.0.b.0.0j4.0
.2,0,-2,9.-4
240 GOSUB 1068^ REM PLOT
250 IF PEEK(764K255 THEN 306
260 ST=STia<C0)aF ST=15 THEN 256
270 XT=-(3T>8 AMJ ST<12>+(ST>4 A^Ci ST<8>
280 n=<ST=9 OR ST=5 OR ST=13MST=10 OR
ST=i4 0? 3T=6)
290 GOSUB 970: REM xLATE ROUTINE
295 GOTO 250
300 GET #LA
310 IF A<>b0 AM3 A062 T^e•^ 256
320 IPK< A=68 )+( A=62 > )^( 15/368 )*( 2*PI )
330 GOSUB 780 = 1^ ROTATE RSJTIHE
340 GOTO 250
760 REM ROTATE CONTROL
770 REM FIRST, XLATE TO ORIGIN
780 FOR KZ=1 TO NP
790 >KKZ)=XFtK2)-A>^.
800 \T(KZ)=YP(i<2>-HV
810 t^J'IT KZ
820 REM DO ROTATION ABOUT 0,0
830 SA=3IN(IA) = CA=C0S(IA>
840 FOR KZ=1 TO NP
850 I'J^XPCKZ)
860 XP(KZ)=K}t^iCA-YP(KZ)SSA
870 WKZ)=Kf-J^3A+YP(l'2v^CA
888 ^eiT KZ
890 rem xlate back
900 for kz=1 to nf'
910 xp(kz)=xp(kz>+a:^
920 Yf<KZ)=YF'<K2)+HY
930 \Ef(T KZ
940 GOSUB 1060^ REM PLOT
950 RETUF:N
960 REM XLATE
970 AX=AX+XT = REM KEEP TRAilK OF ABS X
980 AY=AY+YT:RB1 KEEF' TRACK OF ABS Y
998 FOR KZ=1 TO hf^REM SHIFT X f*€ Y
1000 XP(KZ>=>P(KZ)+XT
1018 YP(KZ)=YF'<KZ)+YT
1020 NEXT KZ
1038 GOSUB 1060 = REM PLOT
1040 RETURN
1050 REM PLOT
1060 GRAPHICS 3+16 = SETCOL0R 8,8, 18 = COLOR
1
1070 FOR KZ=1 TO NP
1080 mP 1898
1085 PLOT XP<K2;',YP<KZ) = TR^' 48088
1090 NEXT K2
1100 RETURN
1130 EHD
e
76
COMPUTEI
July, 1982, Issue 26
A Monthly Column
The World
Inside
The
Computer
Fred D'Ignazio is a computer enthusiast and author of several books on computers for young people. He is
presently working on two major projects: he is writing a series of books on how to create graphics-and-sound
adventure games. He is also working on a computer mystery-and-advcntine series for yoimg people.
As the father of two young children, Fred has become concerned with introducing the computer to children
as a wonderful tool rather than as a forbidding electronic device.
The Computer
Playground
Fred D'Ignazio
Associate Editor
Eric ran over to the royal-lslue sliding board,
standing like a petrified monolith in llie corner of
his school playground. He looked | up, searching
for the lop of the
sliding board. It was
tost somewhere in
the drifting clouds.
f he metal rail glinted
in the sim, resembling
the arm of a giant crane.
The dirty blue stairs
seemed to go up and up,
maybe ending somewhere
in heaven.
Although Kric was only
three, he confidently
grabbed onto the
sliding board's steel
handrail and began clinging the steep metal stairs.
After he got to the top, Eric stopped, panted like a
puppv, and surveyed his playmates, screeching
and dashing aroirnd the playground. His friends
looked strangely small, since Eric was .so high up.
Eric stretched on his lip-toes and gral3l>ed the
chinning bar above the sliding board. He swung
back and forth wildly.
"Karla, watch!" he yelled to his teacher.
Halfway through each arc, he stnacked his feet
against the top of the sliding board. Loud percus-
sion noises echoed across the playground.
Suddenly, Eric let go and went flying down
the sliding board. He slid dizzily round and round
the board's corkscrew spirals. He flew off the end
of llic board, sailed across a nuid j:niddle, and
demolished a sand castle being built by two of his
friends. His friends went crying to their teacher.
Eric howled. When he landed on the sandpile, he
had scraped his bottom on the tip of an upturned
shovel.
Moments later, the two kids were at work on
another sand castle, undisturbed about the prospect
of new children falling from the sky.
Eric was far away, on the opposite side of the
playgrcHuid. His checks were splashed with gritty
tears, and his ears were filled with sand, but he was
smiling. He had a new project. He was crab cravvhng
across the green-shingled roof of the school's
]jlayhouse, trying to work up his courage to jimip
into the old rowboat beached under the house's
eaves. Eric thought maybe he could do it. After all,
what's jumping off a roof to a three-year-old who
can climb to heaven and drop from clouds and
clobber castles?
The Computer Alchemists
The dark-suited men were frowning and fiercely
Micro-Ed is EXPANDING!
Send for free educational catalogs %v
Specify: Pet • Vic • TI • Apple • TRS-80
•The New Commodore 64 ^"'"^ ^°'"''"*^'
you can telephone us
^* Micro-Ed, Inc.
612-926-2292 PO Box 24156 Minneapolis, MN 55424
78
COMPUTH
July, 1982, issue 26
intent. They spoke a cryptic, arcane language.
"Disk error in sector five," said one. "Uh-huh,"
said another. "We'll have to bleed the accumulator."
A third stared at a wide piece of paper he had just
ripped off a green-and-white sheet of paper so
long it could have covered a ban-
quet table." The OS slave program
keeps stripping the control bits!"
he said angrily. He crumpled
up the paper and tossed it
into a navy-green waste-
basket under his spotless
desk.
The men worked in a
^' cool, almost Arctic room,
drained of color by the overwhelming bath of
white light emanating from the banks of flourescent
lamps fastened to the ceiling. Tall panels of lights
winked like a city's streetlights viewed from a distant
hill. Rows of metal boxes were filled with rotating
platters and reels of gleaming tape that spun and
whirred.
Staccato, machine-gun noises filled the room,
as three ol tiie boxes disgorged endless sheets of
paper. The paper looked like a giant, jerking tongue
or an impossibly long scarf pulled from a magician's
sleeve.
The men were only vaguely aware of the tap-
dancing |jrinter and the clacking tape drives. The.se
sounds were nmffled by a loud whooshing noise
that seemed to cover everything in the room like
an invisible volcanic ash. The noise came from air
pouring through the wall grates from huge cooling
and filtering fans. After several hours in the room,
the noise could ntimb a person's whole bodv and
make it feel wrapped in a cocoon of cotton candy.
When Alien Worlds Collide
Eric on the sliding board and the men in the cotton-
candy room seem to be worlds apart. Eric is a tod-
dler having fim on a playground. The men are
high-level programmers and analysts designing a
new computer system.
Eric is outdoors in the sun. The men are buried
deep in the bowels of the Pentagon, in a guarded,
windowless computer room.
Eric is covered with dirt and sand, and s\\eating
from his exertions. The men are coveied with
plastic badges that proclaim their dedication and
their utter seriousness about their craft. Dusi and
dirt arc not permitted in their room. Only, sweat -
cold sweat.
I used to be one ol those men. And Eric is my
son. Now Eric's world and the world where I once
worked have intersected, like alien worlds colliding.
When did the collision take place? It occurred
when I first tinned Eric loose on my home
computer.
The shock was antic. It was also profound.
Eric is a person of arbitrary, random action.
He is a person driven by fantasy, by enormous
appetites and desires. His energy seems boundless.
His temper is formidable. He vibrates to the tune
of unchecked emotions and enthusiasms. He
cringes from invisible monsters that scare him half
silly, then walks unconcerned past real monsters he
still hasn't learned to fear. To my most careful,
clearly put instructions, he answers, "What?"
Computers, on the other hand, are creatures
of reason and precision. They are powerful tools,
the product of advanced technology. (Computers
are predictable. If we put in the right conniiand,
we get the right answer. Or, if we feed the computer
garbage, we get garbage back.
Computers and three-year-olds seem worlds
apart. Just imagine a computer that acted like a
three-year-old. Or imagine a three-year-old that
acted like a computer.
Three-year-olds are hardy and tough. Com-
puters arc finick)' and delicate. Three-year-olds
revel in dirt, mud, and grime. Computers like to be
clean. They work better that way.
Knives, Forks, And Attila The Hun
Eric has lots of nicknames: Little Hulk, Commando
Kid. Tank, and the Lone Ranger, among oiliers.
My favorite, though, is .Attila the Hun. This is an
apt nickname because Eric, at heart, is a barbarian.
C^an a barbarian e\'er learn to eat with a knife
and fork? Can he be trusted in the same room as a
computer?
Sometime, over a year ago, I was on the phone
in the kitchen talking with someone in C'alifornia. I
was trying to obtain some photos for a book 1 was
writing.
Eric was home with me all day, back then,
while his mommy went to work and his sister went
to .school. I didn't worry about Eric while I talked
on the phone, since Eric was busy crayoning on a
piece of scrap paper on the floor of my study. Or
so I thought.
I was deeply engrossed in the conversation,
trying hard to visualize the Californian's robot
turtle, which I had never seen. Then I happened
to look up, and my heart stopped.
There, on the kitchen floor, Eric was hard at
work, creating a fiagstone sidewalk made out of my
floppy disks. My floppy disks. I had stored all my
books and programs on those disks. Eric must have
known how important the disks were because he
had carefully removed each disk from its protective
case and gently dropped it on the floor. He had
placed all the disks in a neat row that ended at the
refrigerator. Now that he was finished building his
QUALITY SOFTWARE FOR TRS-80 COLOR AND OSf
QUEST - A NEW IDEA IN ADVEN
TUR£ GAMES! Different from all tfie
others. Quest is plaved on a computer
generated map of Alesia. Your job is to
gatfier men and supplies by combat, bargain-
ing, exploration of ruins and temples and
outright banditry. When your force is strong
enough, you attack the Citadel of Moorlock
in a life or death battle to the finish. Play-
able in 2 to 5 hours, this one is different
every time.
16K COLOR-80 OR TRS-80 or 12K0SI.
$14.95.
BASfC THAT ZOOOMMS!!
AT LAST AN AFFORDABLE COMPILER
FOR OSI AND TRS-80 COLOR MA-
CHINES!!! The compiler allows you to
write your program": in easy BASIC and
then automatically generates a machine
code equivalent that runs 50 to 150 times
faster.
It does have some limitations. It takes at
least BK of RAM to run the compiler and it
does only support a subset of BASIC— about
20 commands including FOR, NEXT, END,
GOSUB, GOTO, RETURN, END, PRINT,
STOP, USRfX), PEEK, POKE, •,/. + .-,
X , X , = , VARIABLE NAfkflES A-Z. A
SUBSCRIPTED VARIABLE, and INTE-
GER NUfi/lBERS FR0IW1 0 - e-lK.
TINY COMPILER is written in BASIC. It
generates native, relocatable 6502 or 6809
code. It comes witfi a 20 page manual and
can be modified or augmented by the user,
S24.95 on tape or disk for OSI Of TRS-80
Color.
LABYRINTH - 16K EXTENDED COLOR
BASIC - With amazing 3D graphics, you
fight your may through a maze facing real
time monst#'s. The graphics are real enough
to cause claustrophobia. The most realistic
game that I have ever seen on either system.
$14.95. (BK on OSI I
OXilittLliQC;
VENTURER!-A fast action all machine
code Arcade game that feels like an adven-
ture. Go berserk as you sneak past the
OREAQCD HALL MONSTERS to gather
treasure in room alter room, killing the
NASTIES as you go. Great color, higfi res
graphics, sound and Joystick game for the
TRS-80 Color or OSI machines, (black
and white and silent on OSI.) Tape only.
$19.95.
Send $1 .00 for complete catalog of Games, Utilities & Business Software.
AARDVARK-80
2352 S. Commerce, Walled Lake, Ml 48088
TRS 80 COLOR (31 3) 669-31 1 0
'^^^
%
OSI
LET COMPUTERMAT TURN YOUR VIC-PET-CBM INTO A HOME ARCADE
VIC SOFTWARE PET/CBM
ALIEN INVASION Ari-,\rifStyli'i'\ciU'nu'i;l kirvnu! VIC Look mil ht'tf BOMB'S AWAY — Cjii you stop himV The lto-'v bomber drops ihe bombs
thi'ycomt" Aliens .ut' clt'sct'iiduiy lrt>Mi iiw sky Movt'ytmrlasi'rHito position Irons ihv lopoi ihescrffiv Yuu^fi 3 buckets to fjich them. Before you know
iiiid defend tfif ivirth Tlif jitaiks iir^' unundiHii ClUT you survive or will ii bombs art' falling so fdst you wonder when he will slop Just when you think
\.'Lidt'r rule the aiil'i>^y Miiny t'Mrjs on this one 211 levels ul pUiy . . .$9.95 you h.ive him under luntrul your bucket gets smaller Is your hand quicker
CATTLE-ROUNDUP - The etiws die loose in ihe l^'^t^^e Yiiu have 2 th.in yout eye'-*
minute? 10 get e.ieh mwbiuk into the eorr.il You eiiii push. eo.ixiind tall ihe C.l^s HK $9,93
i.iiu> Some eou'i lire mil very sm, lit and Mime .ue very stohborn Yuu iai1I . c-rt-i>^ir-.r» i i ,■ n j ^
have to help then, B.' .-.iti'lul that you don't leave the corral gale open Color ASTtROIDZ - lis your ship vs ^ swarni n killer aammaroidz You iite on a
graphie. and sound l^mhi leeels ol play ,.nd a lime limii $9 95 -'" "'S'"";'"^'"'^' ■'"'^ "i"f ' d.^troy^them before they blasi you inlo the next
HEAD ON - N'our ear moves lorwavd artiund the race iraek You can move *''"\^ ^'■'"' ''^"'^'' "' P'^^ "'"' hyperspaee keys that move you around,
up. down, nahl and iefl Try to seore pomts by runnina over the dois on the PJ'''"^''^'^^ entertainment at its hnesi Great graphii-s and sound
traik Watch out tui the t rusher il you crash you lose a ear Four ears and '" ^''^
iKinus levels FulUoluigraphies and sound Fast aetionand very addieiing g MUNCHMAN -- How matiy duts can you lOver' It's you against the
levels ut play $9.95 eompuiei munehers ZIP and ZAP Can yuu clear the maze lirsi or will Ihey
SNAKEOUT Blocks appear on ilie seteen at tandoni You move up. get you' Number keys move you up. down, right and led GREAT
down, right and lelt and try so move your snake over ilie filoeks Kaeh block GRAPHICS AND SOUND
that you get raises yout seore Keep building yuui score but watch out C.iss 8K ^ S9.93
because the escape routes keep yetting smaller Time liiTiil. color yraphies TAr.,-,-T ^^m^ A-.r^ , , , , ,
and sound 3 aames on this cassette Snakeoui 2 player Snakeoui and TARGET COMMAND - Its you against a barrage of enemy lazers that are
Trapix-r 9 Levels ut Plav S9 ^l aimed ai youi iininio dumps Sight in on the targets and score as many hits as
TARGET COMMAND - Mnve'y'o'uVu^Jer'uti'J p;.sinon"and get'r'eady tot '^"" '^""' ^^ ^"'" ''*'" '""^■■'*"-'* « <^^ =he the diiliculty - IS levels to
somequKkaeiioii Dilteieni types ol missiles are dropping How many cat. '''''''" This.saii arcade style game with great graphicsand soundeffecis A
vou shoot down They all travel at dillerenl speeds and dillerent levels 't'ou "."'*' 'jL^""' *"
must be last on tite trigger to get them all Time limit, fiunus piiinib and very '^^ ' ^'^'^^
addieiiiig Color graphics and sound Art.ide style tun. 10 levels .. .$9.95 VIC AND PET ARE TRADEMARKS OF CBM
ALL VIC SOFTWARE RUNS IN pet/cbm software is designed to run on
STANDARD 3K VIC. '"' chr screen and standard 8K.
COMPUTERMAT . BO.K lbb4. DEf'T C WRITE FOR FREE CATALOG OF VIC PET SOFTWARE
LAKE HAVASU CITY. ARIZONA 86403 PLEASE ADD $1.00 PER ORDER FOR SHIPPING
80
COMPUTEI
July, 1982, Issue 26
sidewalk, he began to walk on the
disks. Then he started to hop!
"Eric!" I screamed. 1 gagged
something inarticulate to the
person at the other end of the
phone and hung up. I charged
across the kitchen floor. Eric fled
to his bedroom.
I knelt beside the floppy
disks. I was in shock. I was certain that
the information ihey contained was Z^^^
squished, trampled, ruined. Several of the /pT? [3
disks were covered with small dusty ^S^7 ^~^^
footprints. ,^ ^-^"^-^^-^J-
Did I flog Eric
Was m)' informa-
tion destroyed?
Happily, no.
But that was only the First of a brief, but emo-
tional, series of incidents involving Eric and the
lloppy disks. The problem was he couldn't keep his
hands off them. Something perverse inside him
told him he had me by the ihroat. All he had to do
was point to a disk, and I flew into a tizzy. Every
time 1 left my study, he would sneak in and rob
several disks and hide them under his bed. For
awhile, things got .so bad, 1 began sealing my disk
drawer shut with strapping tape, just to thwart
Eric.
I hen I iiad an inspiration. I gave Eric a disk
of his own. It was an old disk that was no longer
relia!>le. I wrote Eric's name on the disk in big
green, magic-marker letters. I wrapped the disk up
and gave it to him as a present.
He was delighlecl. He still keeps the disk in a
place of honor on his bookshelf.
And he stopped robbing my disks.
Now You See It, Now You Don't!
I have two kids. Erie, of c(Hnsc', and Catie, who is
six.
I liave several computers, and I have turned
niv studv into a videogame arcade and a computer
progrannning workshop for neighborhood kids.
The kids can u.se all ilu; compiuers in the
room except one, my writing computer. That
computer is supposed to be off limits.
One day, while the kids were banging away at
the other computers, I got up from my computer
U) stretch and make a snack in the kitchen. On my
way back into the room, five miniucs later, I hap-
pened to glance at my computer screen. Before 1
left, the screen had been filled with words -a
section of a new Ijook chapter I was writing. Now
the screen was empty.
I panicked. I ran into the room yelling at the
kids. "Who messed with my computer?" 1 hollered.
"My chapter's gone. I've lost hours of work."
Then I checked the computer. I was snic it
had been turned off, but it was still on. I did some
more checking. Finally, I noticed the screen bright-
ness switch. I tinned it. Magically, mv words reap-
peared. My chapter was untouched. Kothing was
lost.
just then, a very contrite flve-vear-old boy
came up to me with his head tlrooping. "I did it,
Mr. D'Ignazio," he said. "I didn't mean to kill your
computer."
Joystick Tug Of War
.■\nollicr lime, I was in the kitchen eating dimicr
with my family. Several children were still piaving
computer games in the studv. .\11 of a suckleu,
from the stud\ came shouts and scuffliny noises.
"It's my turn to blast them!" one child cried.
"You jusi blasted them!" cried another child.
"Now it's my ttnn!"
I ran into the study and found a six-year-old
and a nine-year-old (biother and sister) doing their
best to rip two joysticks out of a computer.
"What are you two doing?" I shouted.
llie kids liuned towarrl me. Frighiened. ihev
dropped their joysticks. One broke open on the
stuch's hardwood floor.
"Out! Out!" I yelled.
They dashed past me and ran out the front
door of tlie house.
How Come This Doesn't Fit?
.Another time, I was in the kitchen preparing dinner
for my family. It was close to five-thirty, and my
wife, Janet, would be home soon from the office.
As usuat, the study was filled with kids playing wiili
the computers.
1 was slicing up some carrots for the salad,
when I heard strange grunting noises cotning from
I he suidy. Were the kids in there wrestling among
ihe computers?
Hurriedly 1 dried my hands and went to .see
what was the matter.
When I got to the study door, I couldn't believe
what I saw. A flve-vear-old boy was sianding in
front of One of the floppy disk drives. I lial was
okay. I had taught all the kids - even Eric - how to
insert disks properly into the drive.
But this kid wasn't inserting a disk. He was
trying to shove a game cartridge into the drive. He
was trying to scjueeze an inch-thick plastic box into
a liole designed for a disk only a sixteenth of an
inch thick. He grimted loudly because he was
trying so hard. He knew it was a tough thing to do,
and he was giving it his best sliot.
Strategies For Survival
Given these tales of abused and violated computers.
July, 1982, Issue 26
COMPUTEI
B1
what is the best strategy for mixing young people
and computers?
You could put a lock on the computer room
door until the kids all turn sixteen. Or until they
leave home.
You could keep the computer in the car trunk
and only bring it in the house after the kids are
asleep.
You could even Ibriify the computer, beef it
up, and make it indestructible, the way the military
does with computers onboard tanks, guided mis-
siles, and submarines.
You could do these things, but I would advise
against it. In their place, I would advise a "Com-
puter Orientation Session," folKjwcd by frecjuent
"refresher" courses. I would also recommend a few
simple precautions. And trust - lots of trust.
Based on my experience, I know that even
toddlers can be tauglit to use computers properly.
Sure, ihere are lapses. (Oh, boy, are there
lapses.) But, for the most part, Eric and his little
friends do an amazing job with the computers.
They linn them on and off. They adjust the TV
screen, fhey insert antl remove disks and car-
tridges, even tapes. They know how to call up
programs and operate the keyboard, joysticks, and
other controls.
But they must be taught first. You need to sit
them down and gcj over the "eticjuette" of using a
computer. Compare it to the family pet. You
shouldn't pull its tail or try to ride on it. It wouldn't
like that. ^ r
^^^
Instead, you need to be gentle with it and take
care of it. If vou do the right things, it will be nice
to you and give you pleasure.
Frequent drills on specific rules help a lot,
here.
It would help if yoLi give the kids some respon-
sibilities for the compiuers care that are just their
own. Like keeping the keyboard free of cookie
crumbs. Keeping the screen wiped clean of finger-
prints and all sorts of unmentionable objects. Or
reporting any irregularities sucli as wires in ihe
wrong place, or anything that looks dangerous.
Remind the kids frequendy that computers
run on electricity, and that electricity, like fire, can
.serve them or hiul ihem.
Also, if you can afford it, give them their own
floppy disk, cartridge, or tape. Help them store
their favorite programs and games. Give them a
small case to store their printouts, game instruc-
tions, and other computer-related materials. This
way, the computer will become partly theirs. As its
owners, they will try harder to care for the computer
antl protect it.
The following precautions, like the advice
above, are just common sense. For example, I
learned to put rugs on my study floor. Then, when
computer objects dropped, there was a smaller
chance that they'd actually break.
Also, back up all your important programs
and files. Then keep those backup copies in your
office, your bedroom, or in a locked safe. I can tell
you, it's a lot easier to keep your cool when your
child puts yolu- floppy disk in the toaster, if you
have a backup to the disk.
Keep all plugs, wires, and cables (anything
electric) hidden and out of the line of fire. My kids
could trip on a paper clip. How about yours?
Put all yoin- equipment on lop of large, stindy
tables, surrounded by lots of sturdy chairs.
Keep your cartridges, disks, tapes, manuals,
programs, etc. organized. Make everything accessi-
ble to your children, Bui make them respect and
adiiere to your organization.
Teach them standards. All devices must be
shut off after use. Disks and tapes must not be left
out after use. Everything has a place. (Nag them
about this rule, if only to preserve your sanity.)
Two last elements of strategy. First, try hard
not to get upset when it looks Hke your kids have
done something to the computer. Most of the time
things are a lot better tlian they seem at firsi. We've
had dozens of accidents with computers here at the
"D'Ignazio Arcade," yet we've never broken a
computer. At least not completely.
Second, don't push your kids to use the com-
puters. Yom- three-year-t)ld doesn't have to use
educalional programs to benefit from the com-
puter. Your six-year-old doesn't have to learn to
program.
Just the exposure to computers is doing your
kids a world of good. Just switching buttons off
and on. Or tvping letters and shapes on the
keyboard and watching ihem appear on the
screen.
If you make kids' computer time synonymous
with drudgery, with work, with tension, or with
pressure, the kids won't like computers.
Don't push the kids, just open the door, and
sit ba.ck and watch. Computers fascinate kids, and
that fascination will motivate them to learn on their
own .
And congratulate yourself on your accoin-
plishmenl. You are bringing together two very
different worlds. And the results? The results are
anybody's guess. O
ATARI HOME COMPUTERS
A
ATARI
ATARI 800
16K... $669
32K . . . $749
48K . . . $779
410 Recorder _ _ S76.00
810DiscDrive S449 00
822 Prrnlei t269.00
B25 Printer $629.00
830 Modem S159.0O
820 Prinler $269 00
850 Inlerlace $169 00
New DOS 2 System $29.00
CX30 Paddle S18 00
CX4Q Joy Slick . . SIS. 00
C)(853 16K HAM S77;9S~
Microtek 16K RAM S64!9S
Microtek 32K RAM $99.95
flamdish (12aK) $429. 9S
Inlec 48K Board $199,95
Inlec 32K $99.96
Ail RAM prices good IlirQjgit Juiy 1962 only
One year extended warranty S70.00
A81 Entertainer $89.00
482 Educator St 30 00
433 Progfamnier . $49.00
484 Communicalo* $344 00
ATARI HOME COMPUTER PROGRAMS
HOME OFFICE
CX404 ATARI Word Processor S1 19.00
CX6102 Calculalor 529.00
CX4t 2 Dow Jones Investment Evaiuator ...... S99.00
CX4109 Graph It. Joystick oplrortal SI 7 00
CX4t04 Mailing List . S20 OO
CX4115 Mortqatje i Loan Analysis $1300
CX4103 Slatistics 1 $20 OU
CX8107 Stock Analysis S?0 00
CXL40t5 TeleLink 1 $23 00
HOME STUDY
CX4101 An Invitalion to Prts^ramming 1 . . . $20.00
CX4t06 An Invitation to Programming 2 S23.00
CX4117 An Invitation to Pri3gramming 3 _ $23.00
CX4107 Biorhythm $1300
Conversational languages (ea ) . $4&.00
CX4121 Energy Ciar $13,00
CX41 14 European Countries* Capitals S13.00
CX4ioa Hangman. Joystick opitonal , $13.00
CX4102 Kingdom $13.00
CXL4007 Music Composer $34.00
CX4123 Scram, uses joystick $20.00
CX4U2 Slates 4 Capitals S13.00
CX4t to Touch Typing $20.00
HOME ENTERTAINMENT
PAC MAN $35,00
CENTIPEDE $35.00
CAVERNS OF MARS S32 00
CXL40t 3 Asleroids $29.00
CXL4004 Basketball - S27.0C
CX4105 Blackjack - St 3,00
CXL4009 Computer Chess - $29.00
CXL401 2 Missile Commafld $29.00
CXL4Doa Space Invaders $29.00
CXL4011 Star RaidBis $39.00
CXL4006 Super Breakout $29.00
CXL4010 3D TicTacToe $27 00
CXL4005 Video Easel $24,00
PROGRAMMING LANGUAGES AND AIDS
CXL4O03 Assembler Editor . _ $47.00
CXL4002 ATARI BASIC $*7.00
CXB126 ATARI Microsolt BASIC $70.00
CXL4018 PILOT $72.00
CX405 PILOT (Educalionall $105.00
ATARI 400
16K... $329
32K... $419
48K... $519
ATARI PROGRAM EXCHANGE:
Eastern Front "41 , , , $25.50
Avalanche St 5.50
Outlaw $15.50
747 Landing Simulalion $15 50
Babel ..-. $15.50
Dog Daie $15.50
Downhill ._ 515.50
Attack! St 5.50
Blackjack'Casino 515.50
Reversi II 51 5.50
Dominalion $15.50
Solitare $15 50
DiskFiier S1550
Supersoft St 5 50
Data Management sis 50
Chameleon SI 5.50
Instedil $15-50
Insomnia $15.50
My FirsI Alphabet $25 50
Mapware $18 00
Number Blast . St 1 50
Family Cash Flow St 5 50
Weekly Planner 515.50
Bowler's Data Base St 3 00
Banner Generator ..,,,,. $1 1.50
Crystal Software
Bermuda Fantasy $26.00
Beneath Pyramids . 520.00
Galactic Quest 526.00
House ol Usher $20.00
Forgotten Island $26.00
Haunted Palace $33.00
Compumax (Acct. Rec. Gen. Ledger.
Inventorv. Payroll, ea.j. S1 10.00
Synapse
File Manager 800 569.95
Dodge Racei S19 00
Chicken $24.00
Slime 524 00
Nautilus $24.00
Disk Manager $24.00
Fort Apocalypse ......... $24.00
Assembler $39. OO
Proleclor $24.00
EXPY lAutomated Simulation!
Ricochel S14.50
Crush Crumble & Chomp $24.00
Star Warrior $29.00
Rescue al Rigel $24.00
Dalestones SI 6.00
Invasion Orion $18.50
Mission Asteroid $22.00
OnLine
Jaw Breaker $27.00
MouskATTACK $31.00
TheNentStep $34.00
Sollporn $27.00
Wiizard i Princess $29.00
Arcade Plus
Gnost Hunler (cassetle) $24.00
Ghost Hunter (disk) $30.00
KByte
K BYTE Kraiy Shoot Out (ROMI $39.00
K-DOS $69.00
Visicalc $179.00
Letterperlect (Word Processor) $109.00
Data Soil Textwtaard $99.00
Texas Instruments
TI.99/4A ^299
PHA2100 R F Modulator $29.00
PHP 1600 Telephone Coupler S179.(M
PHP 1200 Peripheral Expansion Box. S199 00
PHP 1220 nS 232 Card $143.00
PHP 1240 Disk Controller $199.00
PHP 1250 Disk Drive $359.00
PHP 1100 Wired Remote Controllers (Pair) , . . $3100
PHP 1260 32K RAM. $229.00
PHP Printer Solid State $319.00
PHM 3006 Home Financial Decisions $26.00
PKM 3013 Personal Record Keeping $43.00
PHD 5001 Mailing Lisi $60.00
PHD 5021 Checkbook Manager $18.00
PHM 3008 Video Chess SBO.OO
PHM 3010 Physical Filness $26.00
PHM 3009 Football ..$26.00
PHM 3018 Video Games I $26.00
PHM 3024 Indoor Soccer $26.00
PHM 3025 Mind Challengers S22.00
PHM 3031 The Attack $35.00
PHM 3032 Blasto $22.00
PHM 3033 Blackjack and Poker $22.00
PHM 3034 Hustle $22.00
PHM 3036 Zero Zap $18.00
PHM 3037 Hangman $18.00
PHM 3038 Connect Four $18.00
PHM 3039 Yahtzee S22.00
Tombstone City 21sl Century $34.00
Munch Man $34 00
T I INVADERS $34 00
CAR WARS $34.00
Printers
Smith Carona TPt $699.00
Centronics ?39.1 $519.00
Centronics 739-3 $619.00
Diablo 630 Special S1799.(X)
Epson
MX8Q w(Gra(lrBl $449.00
MXSOFT Call
MX 100 Call
NEC
8023 - _ $549.00
7730 Call
7720 Call
7710 Call
Okidata
e2A 5499.00
83A $749.00
84 $1129.00
Citoh Starwriter
F10.40 CPS S1469.00
F10.55 CPS Call
Prowriter S479.00
Talley
8024.L $1629.00
IDS
Prism SCall
MPC Apple Parallel Board & Cable $69.00
2 Meter RS232RS232 529.95
Cables Available For Most Interlscmg Purposes
Computer Covers
ATTRACTIVE OUST COVERS FOR YOUR
COMPUTER AND DISK DRIVE
Commodore VIC 20. S6.99
Atari 400 56.99 Commodore B032. 514.99
Atari aOO 56.99 Commodore
AtariaiQ 5699 8050(4040 510.99
All Alari Covers are All Commodore covers
Beige, are Royal Blue
Most software for Atari 400/600 available on cassette or disk.
computer mail order west
CALL TOLL FREE
Franco
Habia
Espanol
800- 648-33 1 1
IN NEVADA. CALL (702) 588-5654
P.O. BOX 6689, STATE LINE, NEVADA 89449
HEWLETT
PACKARD
ilHMMMHIMiMi
HP* 85 ^1899
HP»e6 call
HP'87 S1769 00
HP- 125 ...S1999-00
HP- 35 16K Memory Module S169.00
5' . ' Dual Master Disc Drive S1769-00
Hard Disk wIFIoppy - S4349.00
Hard Disk S3440.O0
■Sweel Lips" Ploltei S1 149,00
80 Colurm Printer , S799,00
B7 CPJM S399.M
87 1 28K Memory tBIO.OO
87 Vlsicalc SZOS.OO
HP»41CV Calculator .... $239.00
41C 1189,00
11C 5104,00
12C I1 1 4,00
34C S1 1 4.00
3BC S1 1 4.00
HP-41 Printer S340,00
HPIL CALCULATOR PERIPHERALS
IL Modual S104.OO
Digital Cassette S449.00
Printeri'Plotter S419.00
Card Reader S1G4.aO
Optical Wand S99.00
NEC
SOOl-A ST49,0O
B031 5749.00
B012 5549 0(5
Accounts Peceivable S295 00
Word Processing S395 flO
General Accounting S295 DO
Inventory Control 5295 DO
Job Cosi 5295.00
Disks
Ma<ell
MD I (bo« ol 10) $36 00
MD IHboi D( 10) S46 00
MFD 1(8 ) S44,0O
MFD II IS Double Densityl S54.IK1
Syncom (boi oi 10) 529,00
^commodore
BUSINESS MACHINES
SOFTWARE
Word Pro S Plus 5319,00
Word Pro 4 Plus 5299.00
Word Pio 3 Plus 5199.00
Commodore Ta« Pactcage 5589.00
Visicalc $179.00
Medical Billing $449.00
Ttic Source $89.00
OZZ Inlormation Syslem $289.00
Dow Jones Portfolio $129.00
Pascal $239.00
Legal Time Accounting T 5449.00
Word Cralt 80 $289.00
Power 579,00
Socket-2Me 520.00
Jinsam SCall
MAGIS SCall
CPA ICall
Real Estate Package SCsll
Ttie Manager - $209.00
Sodrom - - $1 29.00
BPI Inventory Control $319.00
BPI Job Costing 5319.00
BPI Payroll 5319 00
BPI General Ledger $329.00
Creative I SAM 579.00
Creative General Ledger 5229.00
Creative Accounts Receivable S229.O0
Creative Inuenlory $229.00
VIC 20 5239
COMPLETE
CALL FOB AVAILABILITY AND PRICE
FORNEWVIC-64
VIC 6 Pack Program ... 544.00
VIC 1530 Commodore Dalassette 569.00
VIC 1540 Disk Drive $499.00
VIC 1515 VIC Graphic Printer S339.O0
VIC 1210 3K Memory Eipande. 532.00
VIC 1 10 6K Memory Expander $53.00
16K VIC Enpansion 599 00
VIC 101 1 RS232C Terminal Interlace 543.00
VIC 1112 VICIEEE-48ainteriace SS6.00
VIC 1211 VIC 20 Super Enpandcr $53.00
VT 232 ViCTerm I Terminal Emulator $9.00
VIC 1212 Programmers Aid Cartridge $45.00
VIC 1213 VICMON Mactime Language Monitor . 54$.00
VIC 1901 VIC AVENGERS 523.00
VIC 1904 SUPERSIOT 523.00
VIC 1906 SUPER ALIEN 523.00
VIC 1907 SUPER LANDER S23.0O
VIC 190B DRAW POKER - 523.00
VIC 1909 MIDNIGHT DRIVE 523.00
CBM 8032
51039
4032 $969.00
4016 5769.00
8096 Upgrade KrI $369.00
Super Pet It 599.00
2031 5529.00
8250 Doubled Sided Disk Drive $1699.00
5 Megabyte Hard Disk $2399.00
8050 . . .. 51299.00
4040 . 5969.00
8300 (Letler Quality) $1799,00
8023 5769 00
4022 5599.00
Pet to IEEE Cable . $37 00
IEEE to IEEE Cable 546.00
Tractor Feed for 8300 $240.00
' C""™— UI02D '
Terminal $13.00
Un Word $13.00
Gratis Menagerie $11.00
VIC PICS $1500
Tickei Tape $13.00
Banner Headliner 513 00
RS 232 , - . 539.00
VT lOSA Recreaton Pack A 544.00
VT107A Home Calculalion Pack A S44.0C
VT 164 Programmable Ctiaracler/Gamegraphics 512.00
Household Fmance 527.00
VIC Games 519.00
VIC Home Invenlory 513 00
VIC ReclEd II $13 00
VLIOl Inlroduclion to Computing $19.00
VL 102 Introduction to BASIC Programming $19.00
VMl 10 VIC 20 Programmers Reteience Guide . . 515.00
Apple
Call for availabiUiy and prices
on all Apple computers and periptierals
In-Stock items shipped same day you call. No risk, no deposit on C.0.0.
orders. Pre-paid orders receive free shipping VKithin the continental United
States t(vith no waiting period lor cerliiied checks or money orders. All
prices shown are cash prices. Add 3% lor Mastercard and Visa, NV and
PA residents add sales tax. All items subject to availability and price change.
Televideo
910 $579.00
912C S699.0O
920C $749.00
925C .• 5749 00
950 $939,00
Calllor computers
a02 call
802H call
816 .- C3l
306 call
Monitors
BMC 12" Green $85.00
Amdek
300G si6g
Color I J339
Color II J699
Color III J429
Tl 10 ■ Color $349.00
Zenith 9 men (Green) J1 19,00
Modems
Hayes
Smarl 5239 00
Ctironograpti S199.00
Micromodem n 5279.00
Micromodem 100. S309 00
Novation Aulo $239 00
DCal $16900
Cat 515900
Nev. & Pa. residents add sales tax.
computer mail order east
CALL TOLL FREE
800-233-8950
INTERNATIONAL CALLS AND IN PA. CALL (717) 327-9575
477 E. THIRD ST.. WILLI AMSPORT, PA 17701
Palncto
Habia
Espanol
84
COMPUTE!
July. 1982. Issue 26
With versions for the VIC and Atari computers, this
program illustrates how to make games and learning
programs easy for preschoolers to use.
Answer
Selection With
Joysticks
is an explanation of the program by line.
Stephen Levy
Bowie, MD
One oi my major objectives in purcliasing a com-
puter was to create educational programs Cor my
young son. Realizing that a preschool child might
have difficulty using the keyboard, I decided that
using the joystick to input responses was the answer.
Not that learning to use the keyboard is not impor-
tant, but if that is not the purpose of the program,
it might get in the way and cause frustration.
Al Baker's two articles in COMPUTEf's First
Book Of Atari gave me ideas and the little extra
push 1 needed.
The purpose of this educational program is to
give a young child practice in deciding which of
four words is different from the other three on the
screen. The child uses the joystick to make his
selection and is allowed as many tries as needed.
Once the correct response is picked, a short expla-
nation appears and the child can then decide
whether to do another problem or to end the pro-
gram. All this is done with the joystick.
The program is very straightforward. All data
for problems are in lines 20 to 199, with even-
numbered lines containing the words and explana-
tions in the odd-numbered lines. I have included
only four series of words (lines 20,22,24,26) so that
the reader may add his own. You must adjust line
220 to equal the number of even-numbered data
lines (total series of words); in my example there
are only four.
example: 220 Q= INT(RND(0)*A) -I- 10:RESTORE Q*2
where A equals the number of problems.
Lines 210-215 randomly select the background
colors.
Since my purpose is to demonstrate the use of
the joystick in an educational program, I have not
added any graphic displays, but I would suggest
"dressing up" the program for use with young
children in order to maintain their interest. Below
Lines
5-10
20-27
28-199
200
210-215
220
230-270
300-350
360
385-390
395
400-420
440-470
Inilialization.
Data for questions.
To be used for additional data for questions.
Data placed as follows:
FoLirchoices, then joystick position ofcorrect
answer. I n the or der iliui they appciir in data
line. If the fnst an.swer is correct then ihe
number should be, 14; second, i 1 ; third, 7;
fomth, 13.
.Sets mode and turns off cursor.
Randomh' selects backgroiitid col<jr and print.
Randomly seicct.s dai;i (o be u.sed. The number
niultiplied by RN D(0) should be equal to the
number of questions.
Reads data and positions words on screen.
Posiiions (a symbol in thedirection of user's
answer.
C^ibecks for correct answer.
Clears @ from incorrect answer.
Gives user another try at the same question.
Reads and prints explanations on screen.
Gives user the option of another problem.
Program 1 . Atari Version
1 REM D^JDYSfTICK
2 REM STEPHEN LEUY
3 REt1 3511 nORLOCK LN.. BOWIE, 110.28715
4 REM 301-464-2852
5 DI h Q 1 *( 20 ) , Q2$( 28 ) .. Q3$( 2S ) > Q4l-( 28 ) ^ E$
(48>. B$( 1 ),C$( 1 >.CLEhR*( 1 >
10 e$=" " =CLERRt=CHR;$( 125) = Ct-="(»"
15 GOTO 200
20 DATA APPLE.. F-EAR^HhT. ORANGE;?
21 DATA HAT IS mi A FRUIT
22 DATA A.E,.I..S.13
23 DATA 'S' IS HOT A '.JOl€L
24 DATA BLUE.i:REEN..RED..SADa3
25 DATA THESE HDRDS hF£ COLORS
26 DATA AF€ .. AFf IE .. ATE . FUH . 1 3
27 DATA THESE I'fjRDS BEGIN WITH 'A'
200 GRAPHICS 2^ POKE 752.1
210 C=RHD(0):nt.^5ETCuLOR L3.2 = SETCuL0R
4.C..8:SETC0LUK 2j11..S
215 SETCULOR e.C.l
220 Q=IHTkRND(0):^4)+10^ RESTORE Q*2
230 REAU Cllf-..Q2f-..Q.Jf..i:.!4$..A
248 POSITION 10-IHT((LEH(Ql$))/£). l^PRIH
T #b;Ql$
259 POSITION 10-IHT((LEhi(Gi4$)y2).9^PRIN
T #6;Q4*
266 F-OSITION 14. 5 = PRINT #6;Q3J
270 POSITION 7-LEN<Q2$;'..5:pRINT fe";Q2*
2'80 F-RINT =Pi^;lNT = PRINT "PUSH STICK IN T
^€ DIRtCTIOH OF"
NEW WORLD OF SOFTWARE.
Scene from BETA FIGHTER during creation using the DRAWPIC graphics editor.
HODGE PODGE: by Marsha Meredith
(Atari and Apple)
NOW AVAILABLE FOR ATARI!!! This captivating
program is a marvelous learning device for children
from 18 months to 6 years. HODGE PODGE consists
of many cartoons, animation and songs which appear
when any key on the computer is depfessed. A must
for any family containing young children.
PRICE $19.95 diskette
C PM EDITOR: by Dennis Zander (Atari. 16K)
Create your own fast aclmn graptiics game for the
Alan 400 or 800 using its o'ayer missile graphics lea
lures By usingpiayer data stored as strings, players can
be moved or changed (for animation) at machine Ian
?;uage speed All ihis is done witf> string variables
P0S(Y)=SHIP1) Ttiis program is designed (o permit
creation of up to 'I players on the screen, store mem as
string data and then immediately try tfiem out in the
demo game inrluded in itie progra!^: Instructions tor
use in your own game are included PI^ EDITOR was
used 10 create itie ammatpd characters in ARTIffORX
RirjGS OF THE EMPIRE andENCOUNTER'kT QUEST AR IV.
PRICE J29.95 cassette J33.95diskette
D ROCKET RAIDERS by Ricnard Petersen (AIari2ilK)
Defend your .^siemid base against pulsar bombs, roc
kets, lasers and the dreaded stealth saucer as aliens
attempt to penetrate ypiir protective force field Prec se
target sighting allows you to lire at the enemy using mag
nefic impulse missiles to help prctect your colony anfl
Its vital structures
PRICE S19.95 cassette $23.95 diskette
L FOREST FIRE TVVO: Sy Richard Petersen (Atari 24K|
FOREST FIRE lias been entianced and npw offers a twn
player mode foi head to tiead con^petitinn to see who can
survive, suffer the least damage and put (heir fire out first.
User input now deterrnines landscape. ;\ind and weattier
conditions, offering limitless game variation. FOREST FIRE'S
excellent cotor graphics have been made even better, turning
your computer inln a super-detailed fire scanner.
PRICE S16.95 cassette S20.95disk(;ttp
□ GIANT SLALOM: by Dennis Zander (Atari. 16K)
BringtheWinterOlympicstOyourcomputeranytimeot
the year' Use the loystick to guide your sliier's path
down a giant slalom course consisting ol open and
closed gates Choose from ihree levels of difficulty
Take practice runs or compete against from two to
eight additional skiers.
PRICE JlS.SScassetle $19.95 diskette
aTHEPREDICTORbyThomasearker
(Apple Atari TRS BO NorthSlarandCPM (M BASIC)
This IS a complete package that covers least squares
fittirig of parameters lor two or more variables THE
PREtJiCTOR can be used for predicting sales and pro
cess behavior, trend analysis, model buildmg and many
other uses calling for multilinear regression techniques
Each option in the program is prompted with simple
vES/NOcommandsmakingii vary easy louse
PRICE 129,95 diskette
D PILOT: by Ivlichael Piro (Atari, 16K)
Pilot your small airplane to a successful landing using
both loysticlis to control throttle and attack angle. PILOT
produces a true perspective rendition of the runway.
which IS constantly changing Select from two levels ol
pilot proficiency
PRICE ,. $16.95cassette $20.95diskette
!J TEACHER'S PET: by Arthur Walsh (Atari, Apple.
TRS 80.PET, North Star and CP' M iMBASIC) systems)
This IS an introduction tp computers as well as a learn
ing tool for the young computerist (ages 3 7) The pro
gram provides counting practice, letter word recognition
and three levels of math skills,
PRICE $14.95cassetle$18.95diskelte
D MAIL LIST 3.0: (Atari. Apple and Nodh Star)
The veri' popular MAIL LIST 2 2 has now been up.
graded Version 3 0 offers enhanced editing capabilities
to complement t he many other featu res which have made
this program so popular MAIL LIST is unique m its
ability to store a maximum number of addresses on one
diskette (typically between 1200 and 2500 names')
Entries can tie retrieved by name, keywprdis) or Oy zip
codes They can t>e written to a printer or to another
file for complete file management. The program pro-
duces 1. 2 or 3-up address labels and will sort by zip
code (5 or 9 digits) or alphabeticaliy (by last name). Files
are easily merged and MAIL LIST wiil even find and
delete duplicate entries! The address files created with
filAIL LIST are completely compatible with ARTWORX
FORf^ LETTER SYSTEM
PRICE $49.95 diskette
n THE VAULTS OF ZURICH: by Felix and Greg Herlihy
(Atari. 24K. PET)
Zurich IS the banking capital of the world The nch and
powerful deposit their wealth m its famed impregnable
vaults. But you, as a master thief, have dared to under
take the boldest heist of the century You will journey
down a maze of corridors and vaults, eluding the most
sophisticated security system in the world 'yciur goal is
to reach the Chairman's Chamber to steal the most trea-
sured possession of all THE OPEC OIL DEEDS'
PRICE $21.95 cassette $25.95 diskette
D BRIDGE 2.0 by Arthur Walsh (Atari (24K) Apple
TRS-80. PET, North Star and CP/M (MBASIC) systems)
Rated «1 by Creative Compubng, BRIDGE 2 0 is the
only program that allows you to tXJin bid tor the contract
and play out the hand (on defense or offense!). Interest-
ing hands may be replayed using the "duplicate' bridge
leature. This is certainly an ideal way to finally learn to
play bridge or to get into a game when no other (human)
players are available
PRICE $17.95ca55ene $21.95 diskette
□ ENCOUNTER AT QUESTAR IV: by Douglas McFarland
. ^ , , „ (Atari. 24K)
As helmsman of Rikar starship, you must defend
(Juestar Sector IV from the dreaded Zentanans Using
your plasma beam, hyperspace engines and wits to avoid
Zentarian mines and death phasers. you struggle to stay
alive. This BASIC/Assembly level program has super
sound, full player missile graphics and real time action
PRICE $21 .95 cassette $25.95 diskette
NEW PROGRAMS!
HAZARD RUN; by Dennis Zander (Atan,, !6K)
The sheriff has spotted you and you must make the
treacherous run through Crooked Canyon past
Bryan's Pond to the jump at Hazard Creek and safety.
You can even put theioystick-controlled GEE LEE car
up on two wheels to n-.ake it thrpugtj some tight spots.
A lead foot is not always the answer as you dodge
trees, rocks and chickens in this nerve-racking game.
HAZARD RUN employs full use of player/missile
graphics, re-defined characters and fine scrolling
techniques to provide loads of fast action and visual
excitement.
PRICE $27. 95 cassette S31.95disket(e
BETA FIGHTER: by Douglas fvlcFarland (Atari. 16K)
See who wil I be the ace gu nner in this action game
set on a spectacular Martian landscape. BETA
FIGHTER can be played with one or two players and
uses player/missile graphics and delightful sound
price! S16.95 cassette $20.95 diskette
DfiAWPlC: by Dennis Zander (Atari 16K)
DRAWPIC provides the user with an unbelievably
easy way to create screens m graphics modes 3-7.
Just sit back with your joystick and use POINT PLOT,
DRAW LINE, RUBBER BAND fill and COLOR SET to
create beautiful images on your Atari. Full or partial
screen images are saved as string data in the program
and can tje instantly recalled and combined into new
images using machine language subroutines. These
graphic images can be easily incorporated into your
own programs. The imagesof HODGE PODGEand the
landscape of BETA FIGHTER were made using
DRAWPIC.
PRICE ,J29.95 cassette S33.95 diskette
POKER TOURNEY: by Edward Grau
(Atari 32K,Northst3r)
You are entered in a high stakes Draw Poker
Tournamefit facing six opponents including Lake-
wood Louie, Shifty Pete and Dapper Dan. Each has
hisown style of play and of bluffing. POKER TOUR-
NEY uttlizesthe Joker, has true tablestakesplayand
each hanij is played based on pot odds. The Atari
version's graphics and sound are superb of Course
(programmed by Jerry White) making POKER
TOURNEY the class program of its type.
PRICE $18.95 cassette $22.95 diskette
ORDERING INFORMATION
Call ARTWORX toll-free number to order
direct:
800-828-6573
In New York, Alaska. Hawaii call:
(716) 425-2833
All orders are processed and shipped
within 48 hours.
Shipping and handling charges :
Within North America: Add $2. 00
Outs ide North America: Add 10% (Air Mail)
New York State residents add 7% sales tax
Quantity Discounts:
Deduct 10% when ordering 3 or more
programs
Ask for ARTWORX at your local computer
store.
Write for FREE Catalogue listing more
information about these and other quality
ARTWORX programs.
L50 North Mam Street Fairport, NY 14450
66
COMPUTII
July, 1982, Issue 26
296 PRINT ^F-RIHT "
CI3RRECT HKSi€R."
360 IF STICK(0>=15 THEN FffilTION 10, 5^ PR
INT tt6;C$=G0T0 300
310 IF STICK/; 0X>15 THB-J PttSITIOH 18.5 :p
Rlhrr tt6;B$
315 SOUMD 0.96.. ie>18^FijR Sl=l TO 20:t€XT
SI
320 IF STICK-: 0)=14 THEN PCeiTIOH lU.l^PP
INT #6;C*
330 IF STICK(0>=11 THEN FiDSITIOH S.S^PPI
MT #6; CI
335 SOUND 8.60.. 10; 8 : PCS: Sl=l TO 20:r€KT
SI
340 IF STICK(0>=7 THEN POSITIOH 12.5:pPI
NT #6;C$
345 SOUND 0.6.. 0.0
350 IF STICK(6)=13 THEN POSITION IS, 7^ PR
INT #6; CI
360 IF STICK(0)=R TF€N GOTO 408
370 Ff:IHT CLEftRI^ PRINT ^PRINT "FIEhSE TR
Y W^IiTHER Aha€R"
372 FOR: X=l TO 100 = bEXT X
375 FOR Sl=l TO 150^SOmD 6.200. 16.8^ }€X
T SI
380 FOR Sl=l TO 100 = SOU€ 6.230. 18. S^f€X
T SI
381 SOUND 0.0.0.6
385 FOR: X=3 TO 7 STEP 4 = POSITION 10.X = PR
INT #6;BIT€XT X
390 F-OSITION S.S^F-RINT tt6;B$-P0:5ITION 12
.S^F-RINT #bjBI
395 UJTO "280
400 RESTORE (Q;r2>+1
416 F£ftD El
420 F-RINT CLEARfj"i:»JD. ";E$
425 FOR S2=l TO 70 = S3=INT(RMD<6)*50H56^
SOUbC 0.33.10.8^ FOR Sl=l TO 7=HEXT SI
427 S0Ur4D 6. 0.8.0^ NEXT S2
440 Ft! NT : PRINT "PRESS BUTTON FOR hNOTH
ER F'ROBLEtl"
450 PRINT ^PF'INT " FISH STICK TO END
II
460 IF STRI&:6>=6 THEN GOTO Im
470 IF STICK-; 0;'=15 THEN GOTO 466
480 FfaNT ^F-RINT ^ PRINT " G
Art OUER"
490 FOR X=l TO 1000 = b£XT X
5^ GRAPHICS 0
Program 2: VIC Version
10 DD=37154:P1=37151:P2=37152
15 GOTO 200
20 DATA APPLE, PEAR, HAT, ORANGE, 1
21 DATA HAT IS NOT A FRUIT
2 2 DATA A,E,I ,S,2
23 DATA 'S' IS NOT A VOWEL
24 DATA SAD, BLUE, GREEN, RED, -2
25 DATA THESE WORDS ARE COLORS
26 DATA APE, FUN, ATE, APPLE, -1
27 DATA THESE WORDS BEGIN WITH 'A'
200 PRINT" {CLEAR} "
210 Q=INT(4*RND(1)+1)
220 RESTORE
230 FOR 1=1 TO Q
240 READ Q1$,Q2$,Q3$,Q4$,A,AN$
250 NEXT
2 60 PRINT" {RED} ";TAB(ll-LEN(Ql$)/2) ;Q1S;"{0
5 DOWN}"
270 PRINT" { CRN } "TAB (11-LEN(Q4$)/2);Q4$;"{ 04
UP}"
280 PRINTTAB{14) ;"{PUR}"Q3$
290 PRINT" [UP) {CYN}"TAB(7-LEN(Q2S));Q2S;"{B
BLU}"
300 PRINT" {04 DOWNJPUSH STICK IN" : PRINT"DIR
ECTION OF THE"
310 PRINT"CORRECT ANSWER
320 PRINT" {HOME} {04 DOWN} " ; TAB ( 10 ) ; "Q "
330 GOSUB 500:IFH=0ANDV=0THEN330
340 PRINT" {HOME} {04 DOWN} " ; TAB ( 10) ; " "
350 PRINT"(HOME} {03 DOWN} " ; LEFT$ ( " { 02 DOWN}
",1+V) ;TAB{10+H) ;"Q"
360 IFCV*2+H)=A THEN 400
370 PRINT" {CLEAR}PLEASE TRY AGAIN"
380 GOTO 220
4 00 PRINT" {07 DOWN} "; PRINT" {REV}GO0D, ";ANS
410 PRINT:PRINT
415 GOSUB500:IF(V*2+H)=ATHEN415
420 PRINT" {D0WN}PUSH STICK FOR ANOTHERPROBL
EM"
430 PRINT"PUSH { RED} BUTTON{ BLU} TO END"
440 GOSUB500:IF(HORV)THEN200
450 IFFB=0THEN440
460 PRINT" {DOWN} GAME OVER"
499 END
500 REM JOYSTICK SUB
510 POKEDD,127iP=PEEK{P2)AND128
520 H=-{P=0)
530 P0KEDD,255:P=PEEK(P1)
540 V=-{(PAND8)=0)
550 H= ( {PAND16) =0)+H
560 V={ {PAND4)=0)+V
570 FB=-( (PAND32)=0)
580 RETURN ®
The above is a graphics 8 screen printout on the EPSON, with our new AESD Il(tm).
It was drawn with Versawriler graphics tablet .
• ••••••••••••••*•••••••••••••••••••••••
002 ATARI EPSON SCREEN DUMP II
This is a screen dump program which allows you to copy
anything from the screen. It also supports all graphics
modes and text modes. II supports all the features of the
EPSON(tm) MX-80 and MX-100. The program is in machine
language and is relocatable (C) $26.95
{D) $29.95
005 BINARY LOAD CASSETTE TO DISK
This utility will tal<e binary load cassette files lil<e SPACE
INVADERS (tm) and allow their transfer to disl<. No more
waiting for loading! The duplicate is AUTO-BOOTING and
uncopyable (D) $21 .95
007 DOWNLOADER
This is a true SMART TERMINAL EMULATOR PROGRAM
which allows you to upload and download files between
computers and save to DISK, CASSETTE, or a PRINTER.
ALSO WORKS WITH THE D.C. HAY'S SMARTMODEM.
(C) $26.95
(D) $29.95
009 ELECTRONIC CALCULATOR
This program is a tool for the electronics hobbyist. It makes
the necessary resistive and capacitive calculations for both
series and parallel circuits. It shows formula, decodes
resistors, plus power calculations lor both AC and DC
circuits (C) $19,95
(D) $21.95
011 ELBBARCS
This is a word game program which is In high resolution
graphics (C) $19.95
(D) $21-95
012 UTILITY PAK 1
These four utility's are for the serious programmer. XREF
is a variable cross reference utility which tells you where
and when a variable is used in a program. VARIABLE-
CHANGER is a program that allows you to easily change
the name of any or all of the variables in your program. Lister
and Denumber are also included (C) $19.95
(D) $21.95
013 PtE BAR UTILITY
This utility is designed to provide a screen dump capability
for the ATARI® GRAPH IT(tm) using EPSON® MX-80
printer. Features STORAGE and RECALL of both Pie and
Bar Charts. Runs in 32K of RAM Screen Dump feature can
be used separately in 24K of RAM. (C) $19.95
(D)$21.95
014 BACKUP MASTER
A machine language program that allows you to mal<e
backup copies of boot load diskettes. Also displays any sec-
tors that the disk drive had trouble reading and skips over
them (D) $39.95
CQIUPJTEH FIEE SQI^TlsiaHE
9433 GEORGIA AVE.
SILVER SPRINGS, MD 20910
(301) 588-6565
CASH, CERTIFIED CHECK,
MASTERCARD & VISA ACCEPTED
FOR IMMEDIATE SHIPMENT.
PERSONAL CHECKS
ALLOW 10 DAYS TO CLEAR.
COMPUTE!
July, W82, Issue 26
Learning With Computers
Teaching
Johnny To
Program
Glenn Kleiman
Teaching Tools: Microcomputer Services
Polo Alto, CA
I expect within the next few years someone will
write a book charging many schools with a mis-
guided approach to teaching children about com-
puter programming. This book, probablv entided
Why Johnny Can't Program, will claim that teaching
LOGO is the only proper approach, and that teaching
BASIC is almost evil. Such extreme claims have
already been made. For example, Seymour Papert,
a leading advocate of LOGO, has written in
Mindstonm: Children, Computers and Powerful Ideas:
[It is] as unacceptable for children to
enter ilie computer culture by learning
computer languages such as BASIC! as it
would be to confme their access to English
poetry to pidgin English translations
(p. 211).
BASIC is the standard language for all personal
computers. LOGO is a newer language, available
for Apple II and TI 99/4 computers and being
developed for several others. The advocates of
LOGO claim it should, and will, replace BASIC —
especially for teaching children. In order to evaluate
this claim, we first must consider what features we
want in a computer language taught to children.
What Children Need
1 . The language should make small but inter-
esting programs easy to write. This is useful for
motivating students and alleviating anxieties about
programming.
2. The language should make it easy to debug
programs. Beginners quickly realize the need for
exactness in programming but have trouble getting
all the details right. Clear error messages and other
features that facilitate debugging prevent a lot of
frustration in teaching and learning.
3. The language should be designed for
working with piclines and words. Most people,
particularly young people, would rather use com-
puters to create pictures and dialogues than to
solve mathematical problems.
4. Learning the language should provide a
good basis for learning more advanced pro-
gramming. The students should master concepts
common to all computer languages and develop
good programming techniques.
5. The language should be compatible with
the ways children think, and working with the
language should facilitate the development of
general thinking skills.
Comparing BASIC and LOGO
Now that we have some criteria, how do BASIC
and LOGO compare?
Ease of getting started. BASIC and LOGO were
both designed with novice programmers in mind.
In either language, you can write small programs
with a ie%v simple commands. The programs will
be of different types. A typical first BASIC program
performs simple mathematical operations such as
converting between centigrade and fahrenheit
degrees. A typical first LOGO program creates
shapes such as squares and triangles.
Ease of debugging. BASIC and LOGO are both
interactive or conversational languages. When
using an interactive language, you can get im-
mediate responses from the computer without
having to go through any other steps (such as the
compiling step required with many languages).
This makes it easier to find and correct errors in
programs. With either BASIC or LOGO you can
stop a program at any time, ask the computer
quesdons such as the values of variables, and then
continue the program from where it was stopped.
The two languages also give helpfid information
aboiu exactly where errors occur.
Working loith pictures. LOGO contains an excel-
lent Turtle Graphics system which makes it easy to
create pictures. The child commands a "turtle"
marker to move and draw on the screen. The
commands include move forward or backward a
niuTiber of steps, turn left or right a ninnbcr of
degrees, select a pen of a specified color, and raise
or lower the pen to control whether the Ciutle
draws as it moves. Here is a simple program to
draw a .square:
TO SQUARE
FORWARD 40
RIGHT 90
FORWARD 40
RIGHT 90
FORWARD 40
RIGHT 90
FORWARD 40
RIGHT 90
END
This program can be condensed to:
TO SQUARE
REPEAT 4 [FORWARD 40 RIGHT 90]
END
July. 1'82. Issue 26
COMPUTEI
89
Turtle graphics, originally developed as part
of LOGO, has since been incorporatecl into other
languages, including Atari PILOT wiiich I will
review in next month's column. See Dave
Thornburg's Friends ol the Turtle column lor
more examples of turtle graphics.
BASIC typically uses a coordinate graphic
system in which you specify the horizontal and
vertical locations ol things to appear on the screen.
Here is a BASIC program to draw a square:
100 DRAW 0,0 TO 40,0
110 DRAW 40,0 TO 40,40
120 DRAW 40,40 TO 0,40
130 DRAW 0,40 TO 0,0
Each DRAW connnand draws a line between the
coordinates specified.
There are many dialects of BASIC. In some
the graphic commands are limited to plotting
points and drawing lines. Others, such as the Radio
Shack Color Computer Extended BASIC and the
IBM Personal Computer BASIC, include more
powerful graphic commands for drawing circles,
arcs and boxes, filling areas with color, and moving
pictures on the .screen to create animations. The
ease of creating pictures in BASIC depends to a
large extent on which version is used.
Working witii words. In BASIC, .sels of letters
are grouped together to form strings. Commands
are available for testing whether strings match, for
combining strings and for selecting parts of
strings.
In LOGO, letters combine to form words,
which are analogous losliings in B.ASIC. In addi-
tion, LOGO has lists. A list consists of an ordered
set of words or simpler lists. That is, you can have a
list of lists, or a list of lists of lists, and so on. This is
very useful for working with language — a list of
words torms a sentence, a list of sentences forms a
paragraph, and a list of paragraphs forms a dis-
course. LOGO contains procedures for checking
whether a list contains a specified word, testing
whether two lists match, combining lists and se-
lecting parts of lists. The commands for working
with language in LOGO are far more powerful
than those in BASIC.
Learning general programming concepts. Wlien
learning either BASIC or LOGO, children become
familiar with many concepts important in all pro-
gramming. These concepts include variables,
branching, iteration (repetition of sets of
commands), conditionals (if/then decisions), and
modules (subroutines or procedures). LOGO adds
the concept of recursion (procedures that call
themselves).
Learning good progi-amming techniques. Program-
ming techniques have advanced since BASIC was
developed, and BASIC is often faulted for not
encouraging good programming practices. As
computers ha\ c become faster and memory less
expensive, emphasis has shifted from writing pro-
grams which execute quickly and take little memory,
to programs that are easy to write, understand,
test, debug and modify.
An important part of good programming is
dividing the overall goals of the program into
simpler subgoals, each of which can be handled in
its own ])art of the program. This is called modular
programming. White modular programming is
possible in BASIC, the language does not facilitate
this approach.
LOGO was designed for modular program-
ming. You define procedures, each of which tells the
computer how to do something. Once a procedure
is defined, it can be used in other procedures in
exactly the same way as any of the "primitive"
procedures built intt) the language. Thai is. each
l^rocedure you create can be used as a module in a
larger program. For example, once the SQUARE
procedure given above is created, it can lie used
in a procedure to create a more complex picture
such as:
REPEAT 8 [SQUARE RIGHT 45]
Since a created procedure can be used just like a
built-in one, LOGO lets you design your own lan-
guage by creating a set of procedures to suit your
purposes.
Compatibility with children s ways of thinking.
Children are best able to understantl things in
terms of concrete images and their own actions,
rather than in terms of abstract concepts. Turtle
graphics therefore provides an excellent means of
introducing programming to children. Commands
to the turtle are in terms of processes children can
act out. A child might create a SQUARE procedure
by first drawing a square with a pencil and paper
(or walking the shape of a square) and observing
his own movements. The child can then tell the
turtle how to follow the same pattern of movement.
In contrast, the graphics commands typical of
90
COMPUTII
July, 1982. issue 26
BASIC require an underslantlingof the coordinate
system and do not reflect the processes of" drawing.
While tiic tunic graphics component of LOGO
suits children very well, I am less certain about the
rest of LOGO. The commands for working \\ ith
words are powerful but mav not be simple for
children to use. Most teachers using LOGO have so
far focused on turtle graphics. I am waiting for
more inlormaiioii from teachers and diildien who
are exploring the non-graphics aspects of LOGO.
Ln BASIC], children generallv find it easy to
understand the individual string processing com-
mands and to write small programs with them.
However, the difficulty of B.A.SIC programming
increases rapidly as the size of the program
increases.
Developing thinking skills. To program in any
language, one must analyze the task the computer
is to perform, divide it into sub-steps, carefully
communicate the sub-steps to the computer, and
test and debug the program. Manv teacfiers report
that when children learn programming they also
acquire ways of approaching many types of prob-
lems and gain an appreciation of the need for
careful work. This leads to improvements in much
of their school work.
I lielieve the critical factor in whether learning
to program facilitates general thinking skills is not
which language is taught, but wliethcr the teaching
encoinages careful task analysis, problem solviiig,
and testing. However, LOGO does have some
advantages over BASIC. Since it encourages mod-
ular programming, it also encourages careful
analysis of problems and good programming prac-
tices. LOGO contains features well adapted to
certain problem sohing strategies (such as progres-
sively reducing a problem to similar but simpler
problems). And working with turtle graphics can
lead children to an intuitive understanding of
concepts of geometry and symmetry.
Which Language Should Children Be Taught?
More people know BASIC thaiT any other computer
language and there are a greater number of books
anci programs available to help teach BASIC. I
know many children and adults who have gotten a
great deal out of learning BASIC - knowledge
about computers, an understanding of general
concepts of programming, appreciation of the
need for careful thinking and attention to details,
and joy and pride in being able to control the com-
puter with their own programs.
LOGO has been used in a number of test
projects and is beginning to be tried in many class-
rooms. As I've discussed, it has several excellent
features for teaching children, particularly in the
turde graphics component. I expect materials to
help learn and teach LOGO will become available
rapidh'.
Children enjoy and benefit from learning
either BASIC or LOGO. Why shouldn't they karn
both?
Versions Of LOGO For Apple II Computers
Two versions of LOGO are now available ibr Apple
compiuers, one developed at MIT and the other
developed by Logo Compiner Systems, Inc. (LC^SI).
LCSI LOGO is marketeci by Apple through its
dealers. Two companies market the MIT version:
Terrapin Inc. (678 Massachusetts Ave. #'205,
Cambridge MA 02139). and Krell Software (21
Millbrook Drive, Stony Brook, NY I 1790). Both
versions require a 48K Apple II with a K^K RAM
card (or language card) and one disk drive. The
two versions have far more similarities than differ-
ences, but each has several features not foinid in
the other.
The MIT version has three features which are
particularly useful with children: (1) The abihty to
change the shape of the turtle. This is u.sefiil for
animations — you can create your own shape and
move it on the screen with turtle commands. (2) A
trace f imclion \vhich lets \-ou run a program step-b\-
step. This is useful for carefully analyzing programs
and for finding bugs, (3) The ability to save pictures
lo disk and retrie\e them from a program. SlIT
LO(;() also has a feature for machine language
programmers: it lets you add your own machine
language routines.
LSCI LOGO, while not having the features
mentioned above, has several leatuies not found in
the MIT version. The.se include more advanced list
processing capabilities, convenient ways of working
with sets of procedures, the ability to re-define
primitive commands, and good error trajjping
capability. I'liese features are particularly useful
for advanced programmers.
An important part of a LOGO package is ihe
documentation. LCSI LOGO comes with two man-
uals, an excellent turtle graphics tutorial and a
good leference manual. Terrapin has its own
tutorial, which covers both turtle graphics and
language processing. I only have a draft available
for review, but it looks like a very useable manual.
Krell provides a minimal' amount of written
documentation and a tutorial on disk. The Krell
tutorial is severely lacking -it demonstrates many
of the capabilides of LOGO but does not teach
anyone how to use them.
The prices of the three LOGO packages, with
documentation and back-up copy, are: LCSI -
$175; Terrapin- $165 ($150 + $15 for back-up
disk); Krell -$179. I recommend either LCSI or
Terrapin. Krell cannot be recommended due to
July, 1982, Issue 26
COMPUTEI
91
the lack oi adequate documentation.
LOGO Books
Four books iliai lell you more about LOGO are
available:
Logo by Hai-old AbeLson (Bvte/McGraw Hill
Publishers, 1982). A guide to using LOGO
which is a good addition to the LCSI and
Terrapin manuals.
Spccidl Tt'chnology for Special Childri'ti by Paul
Goldenberg (Uni\'crsity Park Press, 1979).
Discusses uses of LOGO with severely handi-
capped children.
MitidstornLs: ComlJiilcys, (Children iiiid l^iwcrful
Ideas by Seymour Papert (Basic Books. 1980).
The case for LOGO, strongly stated.
Titrllr Gcomch-s by Harold Abelson and Andrea
diSessa (MITPress. 1980). A technical Ijook
on using turtle grajiliics to teach concepts of
plane geometry, vectors and topology and
other areas.
An Inexpensive Turtle Graphics Program
Many people want to try turtle graphics wiihout
investing in the full package and the necessary
memory expansion. An excellent program which
lets you do so was pLil)lislied in Nibble magazine
(Vol. 3, No. L 1982). This program, written in
Applesoft by David Krathwohl. provides the main
turtle graphics commands, ihe ability to write
procedures and call them from other procediues,
iteration, some minimal use of variables, and saving
programs to disk. You can find a copy of the
magazine and type the program into yoiu" Apple
or order a disk (with documentation and two other
programs) for $29.9.5 ]j1us $I..">0 postage fiom
Nibble: Box 325, Lincoln MA 01 773. ' ©
nil
THE WORD PROCESSOn FOR
fiTfiRX 400/600
WITH CASSETTE DRIVE
ACCU-WRITE]S FOR USE WITH THE ATARI 400 800
COMPUTER AND THE EPSOM MX-80 PRINTER FULL
DOCUMENTATION ALLOWS USER MODIFICATIONS
TO SUPPORT OTHER PRINTERS AND COMPUTERS
THE SUGGESTED RAM IS 32K.
ACCU-WRITE FEATURES INCLUDE:
ON SCREEN CORRECTIONS AUTO-CENTER TITLES
INSERT DELETE LINES LINE COUNTER
OUTLINE FORMAT, PARAGRAPH. SUBPARAGRAPH
FULL DOCUMENTATION & CASSETTE - - S49.95
VISA AND MASTER CHARGE ACCEPTED
CALL (501) 361-8594
DREAM PRINT HOMES INC. SUITE 705
1700STUMPFBLVD GRETNA. LA. 70053
ORIGINAL SOFTWARE FOR THE ATARI 400/800 AND THE APPLE 11/11+ FROM DONT ASK
iThInk your computer's an obedient wimp?
ICuess again!
The insult program.
• Funny • Unpredictable • Interactive
• Guaranteed to call you something
you've never been called before!
$19.95
ATARI: 40K - disk - BASIC
APPLE; -IBK - d<sk - APPLESOFT
^pj;
The high-speed dictionary game
At last, an t'dutatlonal gamo that's really fun to play! You
start caih turn with a word, h definitions, and a (ountcr
set to (>()() points. As time passes the points tic k.iway. The
sooner you pick the correct definition, the mori' point!,
you get, but the sooneryou guesswrong, the more points
you lose.
3 levels of play on one disk:
• Beginner (ages 9-1 4) • Regular • Challenge
2000 words and definitions
$24.95 ACI'tl version speaks!
ATARI: iik ihsk BASIC
APPLE: 48k - disk - APPLESOn
Also available:
The next disk in the WORDRACE System. Use it
along with your WORDRACE disk to play:
• CLAIM TO FAME idtio i.imou^ pi'oplc m hisioryl
• SPORTS DERBY (600 [lieii". ot -pons tnvidl
• Plus more vocabulary words
$19.95
Koquircs WORDRACE di^k
Dealer inquiries welcome
Availiibk' M youi lompulcr store or direit from DONT ASK
liKludf 52 00 -hiijpinBfar cath pmnrjm tCalil fcsidimli jciii (.",. Ijvl
AT.a,RI ii ,, lr.idfmjrk of ATARI INC
APPLE jnri API'LISOrr ,iri' iMdcTTi.irkx ot AF'PLE CO.MPUTER INC
DON'T ASK
Computer Software
2265 Westwood Blvd. 8-150
Los Angeles, CA 90064
(213) 397-8811
92
COMPUTEi
JuV. 1982. Issue 26
Apple Game
Paddles
Figure 1. Push Button
John K. Elberfeld
Rochester, NY
Understanding the linictions of the Apple game
paddles was my first step toward inierfacing the
Apple with ilie "real world." The simplicity of the
paddles is a result of the amazing \'ei"satililv of the
game In/Oiit connectcjr (where the game paddles
are plugged in) on ihc computer mother hoard.
The Apple Reference Manual, pages Td, 24, 100,
and I 14, provides the basic facts about the paddles
and the connector. This article will attempt to
unily these tacts into an understandable explana-
tion of the Integrated Circuit electronics used
every titne Little Brick Out is RUN.
The push button control on the paddles is a
normally open momentary switch. No electricity
may llow through this switch luitil it is pushed
down. As soon as it is released, the flow of electricity
slops. The source of voltage is pin I on the game
I/O connector, which supplies +3 volts through
the connecting wires to one side of the switch.
When the button is pressed and the switch is closed,
this +5 volts passes throtigh the switch and back
through the wires to pin 2 on the I/O connector.
Fin 2 is connected to a standard Transistor-
Transistor Logic (TTL) Integrated Carcuit (IC) on
the Apple mother board. When -1-5 \olts is applied
to pin 2, this IC causes the memory location of
(-16287) or (SCOGl) to be greater than 128. The
actual circuitry allows three push buttons to be used,
but this article will supply details for button 0 only.
When pin 2 is grounded, the value of (-16287}
will fall below 128. However, no! applying +5 volts
lo pin 2 is iiol the same as groiniding the pin. To
make the pin grotinded when no voltage is applied,
a 360 ohm resistor is permanently connected be-
tween pin 2 and ground. Any electricity which
might deceive pin 2 into thinking that 5 volts was
being connected to it disappears through the resi.s-
lof and into the groimd. 'This resistor is located in
the 16-pin DIP Header - the black box at the end
of the paddle wires. This resistor is small enough
to effectively ground pin 2 when no voltage is
applied, but large enough so the current through it
is very small when + 3 volts is applied.
Figure I shows this information.
The game controller analog inputs (knobs
which turn) are physically very simple. The fol-
Pinl
Pin 2
+ 5V
I Push Button
7-1LS251
>
560 H.
Pin 8 -=
lowing details apply lo PADDLE 0. btil the coiuepi
is ihe same for all [)a(ldles. Just the pin nimibers
are different.
Pin 1 agaiti supplies -f-5 volts through the
coimecting wires to one end of a 150. 000 ohm
\ariable resfstor. fhe other end of the resistor is
connected through the wires to |:)in (i. furning ihe
game control \ai ies the resistance between the 3
\()lt supply \t)ltage and pirt 6 on the game I/O
connector. When the resistor is ttirnetl so the resis-
tance in the circuit is large, \ eiy little ctu'rent can
flow back to ]>in 6. A low resistance setting of the
game control allows a large ctnreni to llow back to
pin (i.
Pin 6 is a direct connection to a cajjacitor on
the mother board. A capacitor is designed to store
electric charge, but this capacitor starts out with no
charge. Electi'ic cin-renl which flows through pin 6
to the capacitor will build up the charge on the
capacitor until it reaches a predetermined level.
When the Apple is instructed to read the value of
the game control ihrough the BA.SIC commaufl
PDL(O), it uses a machine language monitor routine.
This command starts a counting rouUne, consisting
of a loop and a cotmter. to time how long it takes
the electric current through the game controller
lesisior to charge the capacitoi- back up from its
zero starting charge. The number of times that the
computer executes this timmg loop is the value
reported when PRINT PDL(O) is RUN.
To limit the electric current flow into the
capacitor when the game control is applying zero
resistance, a small 100 ohm resistor is connected in
series between the capacitor and the game control-
ler. If too much current flowed into liic capacitor
in a very short time, the power suj^ply or other
circuits could be damaged.
How can the computer tell when a capacitor is
charged? The Apple uses a 558 quad timer Inte-
grated Circuit wiiich is designed specifically to
July. 19S2, Issue 26
COMPUTEI
93
acxomplish this. This circuil is similar to four 555
timers on one chip and allows up to foiu" game
paddles to be used at one time. The .^jSH IC is care-
fully designed lo have a high output when the
capacitor is cliargcd to hss than 2f'^ of the supply
voltage, and a low output alter it readies 2/3 of the
supply voltage.
The timing cvcle is stalled when the 558 is
triggered -accomplished i)y PKKKing at location
49264 (-16272 or$C070). After the B-fSH is triggered,
the output goes high, and t!ie capacitor is allowed
lo charge up from the cmrent through the game
controller. When the capacitcn- reaches 2/3 of the
sujjpiv voltage, (he oiUiJUt goes low and remains
low until triggered again. The 358 then automati-
cally discharges the capacitor and waits for another
trigger. Memorv location SC064 is high (greater
than 128) while the output of the 558 timer is high,
and low (less than 128) when the output of the
timer is low. How a high output (rom the 558
affects the value in a memorv location is a "ood
topic for some other author.
Figure 2 shows the circuit used lor Paddle 0
on the .\pple. The other game controllers have
similar circtiils but different memory locations.
Figure 2. Game Control Paddle
Pin i
+ 5V
000.0-
Pin6
100-
Pin 2
1 .022;jLf
558
Timer
Pin 3 Trigger
Pin 1 Output
The .^pple Relerence .Manual, I'age 144, lists
the following monitor routine for reading the
value of the game coniroller. These directions are
permanently stored in the Read Onlv Memory
(ROM) of die Apple and are u.sed during the execu-
tion of B.A.SIC commands in regular programs.
The following explanation assumes some knowl-
edge of machine language programming.
PREAD LDA PTRIG
LST ON
LDY #$00
NOP
NOP
PREAD LDA PADDLO.X
BPL RTS2D
INY
BNE PREAD2
DEY
RTS2D RTS
PTRIG is location $C070. LDA to this locadon
triggers all 4 timers on the 558 chi|3 on the mother
board. Ihis forces all the oiuputs of the 558 chip
to go high and remain high until the capacitors are
charged. This trigger also allows the capacitor to
start charging.
LST ON is not a machine language ct^nmiand,
but is probably a note to indicate that ifie timer has
been triggered.
LDY #$00 loads the Y register with a value of
zero to initialize it fbi" the timing loop.
NOP means no operation. The.se are dummy
commands used to take up some time befoie the
liming loop is entered.
LDA PADDLO.X stores in the accumuiaU)r (A)
the value ol the memory location iuclicaicd bv
P.\DDLO, with the location address increa.sed by
the \alue stored in the X register. This allows a
single routine to lime all lour allowable game con-
trollers. The luunlxr of the controller (0 through
4) must be loaded in the X register belore the
routine is entered. P.\DDL() is the memory location
SC()64, the memory local ion which is high when
the current through paddle zero has not charged
the capacitor. When register X has 0 stored in it,
this location is read. When register X has the value
"1" stoied in it, the \alue in memorv location $C()64
+ 1 =SC0(i5 is loaded in tlic accunuilaior. $C065 is
die memory location ^vhicll is high when paddle I
is in the process of charging its capacitor.
BPL RTS2D commands the computer to
branch to location RTS2D if the value loaded into
.\ is positive. RrS2I) contains the command R IS
wiiich sto]js die timing loop and relurns control to
the BASIC connnands whic:h first called in the
routine. A byte is considerctl negative when bit 7,
the eighth bit from the right, is "I ," and positive
when this hit is "0." This seventli hit is also used as
the flag lo indicate that the oiilpiU of the timer is
still high. While the capacitor is in the process of
being charged by the current through the game
controller, this seventh bit in location $C064 is set
to "l," the computer considers the value of the
entire byte negative, and no branching occurs. The
computer contiinies down the list of instructions.
When the seventh bit is "0," it means the capacitor
is charged enough, the timing stops with the value
in Y indicating the tnimber of limes the program
executed the loop, and the program branches to
RTS2D which returns control back to the B.-\SIC
program. This is the normal LNI^ for this monitor
subroutine.
INY commands the computer to increase the
value ol the Y register by I . The Y register is now a
counter which indicates how many times the com-
puter passes this point in the loop. It is this value
stored in Y which is the "value" of the game con-
94
COMPUTEI
July. 1982, issue 26
troller setting.
BNE PREAD2 coniniancls the computer to
branch back in the loop to the location of'PREAD2
(the LDA PADDLO.X command) if the value of the
Y register is not equal to zero. If the resLslauce i.s
verv high in game controller, the Y register may
have counted up to 2.55, the largest nimiber it can
store. (All 8 bit.s are set to I). Adding 1 more to 255
doe.s not result in 25(i, but changes all the I's to O's
(255+ 1 =0). At tliis point the computer realizes it
has gone too far, and it does not branch back to
continue the loop.
DEY decrea.ses the value of Y by one. Since Y
UTUSt be zero to reach this point in the program, Y
changes from 0 back to 255 because 000 - I =255.
This is the largest lunnber that may be a paddle
reading. At this point the timing loop is halted.
RTS then retvu-ns control to the BASIC pro-
gram which called the subroutine. The value in Y
is the value of the paddle reading.
The loop of:
READ2 LDA PADDLO,X (5 CYCLES)
BPL RTS2D (2 CYCLES- NO BRANCH)
INY (2 CYCLES)
BNE PREAD2 (3 CYCLES-SUCCESSFUL
BRANCH}
is repeated until the capacitor is charged or until Y
reaches a reading of 25(i (000). The loop uses 12
clock cycles or about 12 microseconds. The
maximum amoinit of lime this program can meas-
ure is 255 loops or 3060 microseconds. The time
needed to charge sufficiently the .022 mfd capacitor
on the mother board through 150,000 ohm game
controller is 1.1 * 150,000 * .022 E-06 = .0036
seconds =3600 microseconds. This extra time
guarantees that the maximum value can be reached
when the game controller is set for maximum
resistance.
Where can this information lead? It is possible
to substitute a thermistor in place of the game
controller so the reading of a paddle will indicate
the temperature. A game controller with a resis-
tance differing from the 150,000 ohm Apple Con-
troller can be adapted to this circuit. A till sensitive
switch could replace the pushbutton to indicate
changes in position. The possibilities are endless
and challenging. For more information on these
circuits, see:
Minis, Forrest M.
Engineer's Notebook
Radio Shack, 1979
Lancaster, Don
TTL Cookbook
Howard W. Sams, 1974
Semiconductor Reference Guide
Radio Shack, 1981 ©
In this interesting article, the author, a quadriplegic,
describes techniques he has learned to effectively work
with his contpuler. His suggestions may he of interest to
other handicapped progrannners and. at the end, lie has a
progrdm-typing hint for evo-yone.
Computing
Techniques
For The
Handicapped
George Leotti
Glenolden, PA
Being a physically disabled individual I faced some
unique problems in making my computer, and
peripherals, usable. First, I'd like to briefly describe
my disability and then pass along some hints that
may help other people, disabled and able alike.
I'm a (15-(>(> quadriplegic. What liiat basically
means is that my legs are totally paralyzed. My
arms are partially paralyzed. 1 can't move my fingers
or thumbs at all, but I can flex my wrists. Now, on
to the hints.
There are many devices available to hold
pencils, pens, and paintbruslies that will hold a
stick which may be used to press keys on your
keyboard. 1 use a imiversal holder with an L bar
that holds a pencil, eraser-side down. Use whatever
is comfoitable for you.
To protect the faces on my small keyboard
PET, I have someone cut out the fingers of a surgi-
cal glove, ptu them over the eraser, and tape it
securely to the pencil. This way the eraser will not
fragment and get stuck between the keys. Plus,
wear and tear on the keys is reduced.
A New On-Off Switch
The first problem I encountered when I bought
my PET was bow to turn it on and off by myself.
As you know, the PET and Commodore peripherals
have their power switches located on the back
panels. Why? I don't know. But I do know it is
impossible for me to reach them.
The solution was simple. 1 had another switch
mounted on the front panel, above the keyboard.
The new switch "jumpers" the power switch in the
rear. The Commodore switch now stays in the on
position. The new switch turns power on and off.
July, W82, Issue 26
COMPUTE!
95
Its switch is a toggle switch which can be purchased
at any Radio Shack, part number 275-651.
I had the same done on my 202ji printer. The
switch is mounted an inch to the right of the paper
advance button.
Who will install switches For you? My brother,
an electronics engineer, installed them for me. If
you have no one able to perform this operation for
yon I suggest you: contact a local electronics/
computer store, appliance repair shop, or television
repair shop. If you go this rf)ute be sure the person
is insured and knows exactly what you need. If
your machine is slill luider warranty, contact the
manufacturer first. They (or the store where you
bought it) may install a switch for you.
Another solution to the problem would be to
have a switcliing center installed by a competent
electrician. In this way you would not deface your
machine and you could have all the power .switches
in one convenient location.
Operating Tape And Disk Drives
The next jjroblem was how^ to push the PLAY and
RECORD keys a( the same lime. I found that if
you put .something in the jaws of a luitcracker to
space the ends the ]jroper width, and then tape the
ends to hold the spacer, you have a tool that works
Oil the tape drive. I1iis, when held in the inotuh,
makes pushing tho.se buttons easy. Since most
nutcrackers are made of meial, however, it would
be easier on your teeth to contact yoiu' friendly
occupational therapist for something made of
plastic oi" wood.
Just reccmly, I purcha.sed a 2031 single disk
drive becau.se of an overflow of cassettes. It is a
remarkable, machine, ofcour.se, very fast and
efficient, but when I tried to change its diet (remove
one diskette and put in another) I found I could
not pull out the diskette.
Some tape and toothpicks solved this one. On
the left side (front) ol my diskettes I liave between
five and six inches of tape folded in half and fixed
to the top and bottom of each diskette with a tooth-
pick at the fold in the tape. Now I can pull out a
diskette with one finger.
I used strapping tape (tajse with fibers) and
round toothpicks. Instead of toothpicks you could
use small plastic rings that you can put a finger, or
your pushstick, through. Be sure not to cover the
write-protect notch on the disk.
Shopping For Machines
If you are disabled and deciding which computer
to buy, go to a computer store. Try each model or
brand you are interested in. Look for accessibility.
I have found that the PET has very accessible
keyboards. For me, the separate numeric keypad
reduces arm fatigue when entering programs man-
ually.
Also, anyone who has a disability that affects
the hands should consider the tractor feed type
printer. I have the problem of my paper coming
out oi alignment almost e\ery time I tear a sheet
out of the printer. 1 have to use my mouth to grip
the paper and pull it. So far, I've come up with no
practical solution to this problem...
Something For Everyone
Here's a hint which might solve a general problem.
When entering a program from COIVIPUTE!, do
your eyes sometimes wander the page looking for
your place? In the back of COMPUTE! you will find
a card tliat is used for foreign subscriptions. If you
live in the US, or subscribe, tear this card out.
Use a sharp hobby knife to cut out a "window"
in the card. Cut out, on the address side, the words
(sorry about this) COMPUTE! Magazine. You may
need to widen it to equal a whole line of a program.
Place the card on the page that has the program,
leaving the lines vou want, showing through the
window. .\s you enter the program, just move the
card down the page.
lliese ideas are offered as suggestions. Neither
COMPUTE! nor Mr. Leolti can be held responsible
for any damages resulting from their use. ©
SWEET-TALKER,
IT GIVES YOUR COMPUTER AN
l^UMITED VOCABULARY.
Parallel Version
Apple It Version
As Featured in Ciarcia's Circuil CeUar,
Byte Magazine. Seplsniber ^981
The Sweel-Talker voice synthesizer allows you to add speeds ol
un I im Ilea vocabulary to your computer, Lililizing itieVoiraxSC-OiAcriip,
you can output any message by programming individual ptionemes.
Comes in two versions; one plugs directly into your Apple II. trie otr^er
connects to any computer witri an 8-bit parallel printer port. * 12 votts
and + 5 volts required tor parallel board,
•Coniains 6^ difle^em phonemes STOI
accessed by a &-bJ1 code
STOZ
ST06
• Automatic and manual mtlec-
tion modes
• Parallel port driven or plggin
compatible with Apple II.
•Super text-Io-speecti algorithm
on disk lor Apple II, Makes
Sweel -Talker equivalent to
units 3 times the cost
•On ooaid audio amplifier
•Sample program on cassette
witti Apple II board,
•Optional power supply for
parallel board
To Order: Call Toll Free 1 -800-645-3479
(In NY Slate Call. 1-516-374-67931
For Inlormalion Call: 1-516-374-6793
MICROMIIMTINC.
917 Midway
WoodmereN.Y. 11598
Sweet Ttlkar Parallel
Pott Bomd AIT $139.00
Sweat Talker Apple II
plug in board 149.00
Teit'lo-Spaech
algorithm on disk
for Apple II 35.00
SC01A Votran Speecti
Synlliaslier ctilp 70.00
5 or mora 55.00 aacfi
LIPS01 UnWarsal Power Supply-
A4T 35.00
Add $2.00 lor shipping i handling
^
96
COMPUTEI
July, 1982. Issue 26
For Commodore coinpulers, this progi-ayn allows you to
add very large numbers together.
Multidigit
Addition
Zoltan Szepesi
Pittsburgh
A iiiicrocompuier generally cannot handle
more ihaii 8 to 12 clijrjts ofiDiecisioii. However,
special programs can be written in HASIClor
machine language to increase the precision of the
calculations.
in lliis program, Multackl, tlie addition is
made in eighi-digii groups. The two numbers to be
added togethei- (the (uldtnida) are entered as two
strings between lines 70 to 120, using a modified
version of Gary Green berg's simulated injjul
routine (COMPUTE!. Mav/jime, H)SO. #-1). I'iiis
way, up to 2') 1 digits can l)e etiteted for each
number. The two addenda can have differeni
numbers of digits. Lines 1-10 rt) 160 make diem
equal in lenglh h\ plaiing zeros in front o( (he
shorter number.
I Jnes 1 70 to 2,')() divide the siriiigs into eighi-
digii groups and transform these substrings into
numeric values. Then lines 260 to 'U)0 do the addi-
tion, and 310 to 380 reconvert the groups to eight-
digit strings, taking care to 1111 up the enipiv places
with zeros, and eliminating the spacing between
(he groups. Tlie result is ])rinted oui as aconiiiuious
siring.
10 PRINT" {CLEAR} MULTIDIGIT ADDITI
ON"
40 PRINT" {DOWN}THE NUMBERS TO BE ADDED CAN
HAVE MAX."
50 PRINT"254 DIGITS, TYPE THE DIGITS CQNTIN
UALLY, THEN PRESS 'RETURN'."
60 PRINT"CORRECT WRONG NUMBER WITH 'DEL'."
70 PRINT"!
INT" {R
80 GOSUB 5
90 A5="0"+
100 PRINT:
RINT" {
110 GOSUB
120 B$="0"
130 T1=TI:
n
140 LA=LEN
15f) IF LB<
=D$+"0
160 IF LA<
= DS-i-"0
170 M=INT(
1B0 DIM A(
DOWN]
IGHT] ";
00
ZIS
PRINT"
RIGHT} ";
500
+ Z1$
PRINT:PRINT"
FIRST ADDENDUM :A=": PR
SECOND ADDENDUM: B=
{REV}WORKING
(AS) :LB=LEN(BS) :DS=""
LA THEN TD=LA-LB:FOR 1=1 TO LD:D5
":NEXTI :BS=DS+B$
LB THEN LD=LB-LA:FOR 1=1 TO LD:D$
" : NEXTI : A$ = D$+AS : LA= LEN ( A? )
LA/8) :Q=LA-8*M:IF Q>0 THEN M=M+ 1
M) ,B(M) ,C{M) ,D(M) ,R(M) ,RS (M) ,F${M
190
200
210
220
230
240
250
260
270
280
290
300
310
FOR I=(
1
IF M=l
OTO260
IF Q>0
TO M:D(I) =0:C(I)=0:R(I) =0:NEXT '
B(l) =VAL(BS) :G
B(l) =
THEN A(1)=VAL(AS)
THEN A(l):
VAL(LEFT5 {AS,Q) )
VAL(LEFTS(BS,Q) ) :X=1:GOTO 230
A(1)=VAL(LEFT$(A$,8) ) : B ( 1 ) =VAL { LEFTS (BS
,8)) :X=0
FOR 1=2 TO M
A(I)=VAL(MIDS(A$, (I-l-X)*8+l+Q,8) ) :B(I)
= VAL(MID$(B$, (I-l-X)*8 + l + 0,8) )
NEXT I
FOR I=M TO 1 STEP -1
C(I)=A(I)+B(I)+D(I)
D(I-1)=INT(C(I)/1E8)
R(I) =C(I)-D(I-1)*1E8
NEXT I
PRINT:PRINT" THE SUM : A+B= " : RS ( 1 ) =STR$ (
R(l> ) :IF R(1)=0THENR$(1)="{ RIGHT}"
320
330
340
350
360
370
380
390
400
410
420
430
440
500
510
520
530
540
550
560
570
580
590
600
610
620
PRINT
FOR 1 =
P=LEN(
(!}=""
FOR J =
IF P< =
R$(I)=
PRINT
PRINT:
T( (TI-
PRINT:
OR N)
GET VS
IF V$ =
:GOTO
IF VS<
IF V5 =
ZS="":
PRINT
GET ZS
PRINT
IF Z$<
IF ZS =
ZZ=LEN
Z1S=LE
0510
IF Z$
PRINT
Z1S=Z1
RETURN
END
RS(1) ;
2 TO M
RSd))
IFM=1 GOTO390
R$(I)=STRS(R(I) )
R${I)=RIGHTS(R$(I) ,P-1) :F$
8 TO 2 STEP -1
J THEl^ FS (I)=FS (I) ■(-"0":NEXTJ
FS (I)+RS(I)
RS (I) ; :NEXT I :PRINT
PRINT" EXECUTION TIME:"; IN
Tl) *100/60+.5)/100;"SEC"
PRINT"DO YOU WANT TO CONTINUE? (Y
II
:IF VS=""GOTO 410
"Y" THEN CLR;PRINT" [CLEAR} {DOWN}"
70
>"N" GOTO 400
"N" GOT062e
Zl$=""
"S 5 LEFT}";
:IF Z$="" GOTO 510
" (LEFT}";
>CHR$(20) GOTO 580
"" GOTO 510
(ZIS) :IF ZZ<1 GOTO 510
FTS (Z1S,ZZ-1) :PRINT "{LEFT} " ; :GOT
CHRS{13) OR ZS=CHRSC141) GOTO 610
ZS;
S+ZSrGOTO 510
• DISK'O'MATE (Wnie for Price)
A must (or 2040/4040 disk owners. Write protect indicators/
switches, power indicator and error beeper.
•"Real World" SOFTWARE isits^s,
Word Processor. Mailing Lisl, Catalog, Ham Radio. Frequency Counter.
-"OLD" 8K PETs
• 2114-TO-6550RAMADAPTER (S12 »ii
j Replace 5550 RAMs with low cost 21 I4s. Hundreds Soldf
' •4K MEMORY EXPANSION isie se^i
Low cost memory ©Kpansion using 31 14s \at bigger programB.
OPTIMIZED DATA SYSTEMS
Dept. C. P.O. Box 595 - Placentia. CA 92670
DISK-O-MATE Ifatfemarfc QpffrTtllfrtf Pala Syttems - PET/CBM trade/ngfl. Commodate ^
July. 1982, Issue 26
COMPUTEI
97
For PET/CBM or Atari disk users, any memory size. This
is a handy program if yon ever need to update files.
A Direct
Access File
Editor
Charles Bronnon
Editoriol Assistant
What's in a file? A payroll progiiim might keep a
Hsl of employees, social security numbers, status,
etc., on a cHsk file. A check balancing program
would probably save liic information gathered
during the run of the program such as check
number, payee, and amount paic! on a file.
Most files are very similar- a list of numbers
and strings (words, names, etc.). Each line of the
file is "sent" to the file with some variant of the
PRINT statement, such as PRINT#1,A$ or
FRINT#1, ZX(I,J). [PRINT#}; A$ on Atari.] Each
line (also called a field) ends witii a carriage return.
This carriage return is used lo separate each
line in the file. Otherwise, the file would be ju.st a
long block of characters, each line running into the
next- f hese separaKJis are called dcliinilns. On
many computers, the comma and colon can also i)e
used (but can cause trouble) as delimiters. Ihis is
important, as we will see later.
A File Editing Tool
You probably use files every day, even if you're not
a programmer. If you use any commercial software
such as a word processor, or a prepackaged ac-
counting program, you are unknowingly gener-
ating files. Such software writes files to the disk to
save the results of calculations and your input,
then later redds the file, when you run (he program
anew, to "restore" the original conditions and
information.
Unfortunately, few programs let you edit this
information (excepting a word processor, of
course). You may have a check-balancing program
that writes to disk all checks that you enter in order
to use this information for taxes at the end of the
year. This file simply accumulates information. If
you later discover that you'% e made a mistake on a
check entered, there is no easy way to find or correct
that check. What you need is a program that can
read the entire file into memory, let you view it
and make selective changes, then rewrite the cor-
rected file back out to the disk.
The program here is -a file editor. Basically, it
asks you for the name of the file you want lo edit,
reads it in, and lets you "page" through the file 19
lines at a time. You can edit, replace, insert, and
delete lines, as well as search the file for any
.sequence of characters.
f his program only works with a file organized
in the common "list" structure previously men-
tioned (which limits it to sequential files on the
PET/CBM).
The two versions presented here, for the Atari
and the PET/CBM, are different, but they both
perform similar functions. After you enter the file
name, the file is read into a string array. If the file
is too large to fit into memory, the message "FILE
TOO LONG" will appear. You can change the
variable MAX (maximum number of lines in file) if
you have enough memory. The file is displayed as
numbered lines in the top 19 lines of the screen.
Your input is taken at the bottom. When prompted
for a line, always enter the numher of the line.
Miscellaneous
If vou enter anv command that vou don't want to
perform (such as Replace when you meant to type
Edit), you can usually exit the command with a null
input (just press < RETURN >) on the PET/C:BM, or
In pressing the ESC (escape) ke)- on the Atari.
Since commas and colons are used as delimiters
on the PET/CBM, you can't enter or edit a line
containing commas, fo enter such a line, hold
down SHIFT when vou press the command key
such asSHIFT-E for Edit, SHIFT-! for Insert, etc.
A quote will automatically be printed at the start of
the line, permitting vou to enter commas and
colons without the infamous PEXTRA IGNORED
message. After you enter the line, all commas
(CHR$(44)'s) are converted to "fake comma.s" that
look like commas, but don't work as delimiters
(CHR$(108)).
Create A "Fake File"
You could even use this program lo create files if
you can create a "fake file" containing only one
item such as:
OPEN 1 ,8,8,"0:rilename" (on the PET)
PRINT#l,"X":CLOSEl
OPEN# 1 ,8,0,"D:rilename" (Atari)
PRINT# 1 ;"X":CLOSE# 1
You can then Replace the first line (the "X"), and
use Append to add to the file.
Ill leave you with one important reminder:
remember to re-SAVE a file after you edit it or
your changes will have been in vain.
July, 1982. Issue 26
Editing Commands
COMPUTE!
98
PET/CBM
Atari
Command
Description
<RErLRN>
N
Next page
Displays the next 19 lines.
E
E
Edit
I'he priniiiry "change" conimaiui. You enter the number of die line lo be changed.
The line isdi.splayed at the bottom of thcscreen with ihe cursoron the fn-si character.
You can use your coniputer'.s editing keys lo change the line (just like in an INPUT
statement). Press <RF.f URN > when iinished.
R
R
Rcpkuf
You just enter a coini>letely new line to t epiace anv line in the lilc.
!
I
Insert Line
For Atari: you enter the nunilier of the line you want to insert a new lineal. That line
and all following lines are "pushed down,"' and the word "*** I NSERT ***" is in-
serted. You can then use Replace lo add a new line. For PET/CUM: you enter the
niunber ofthe line you want lo insert a line al, and then you enter the line you want
inserted.
D
D
Delete Line
Enter the ininiber of the line to he deleted. The following lines will he "pulled up"
to nil the gap. For PET/CBM : 1 (you u.seSHI FT-D (shifted D). you can enter the
starting and ending lines of a block of lines you'd like deleted.
A
A
Append Line
.After you ivpe "A" you can enter a new line which will be added to the end ofthe flic.
1'
P
I'rinl
Enter ihe starting and ending lines of the block of lines you would like printed lo the
printet . For the I'ET/CBM, this is device number four. You can just hit <RETURN >
to both prompts lo print the entire file (.-Xiari version).
S
\V
Save/Write
Stoi es the file on disk. PET/CBM: scratches the old file, then writes the new file.
Atari: Replaces the old file, unless you save the file inideranother name.
X
Q
ExityQuil
Lets you end the prograin.
0/1
tSIART]
Re-run
Atari version: If you press the ST.ARF key al the prompt "Which?" you can RU N
the program o\cragain. PET/CBM version: Entering zero or one specifies which
drive to use for t he next file you want to edit. You ran then enter the new file natnc.
G
(;
(io to line
Lets you "ski)> around" in the file. Enter the number of tiie line ycni want to see.
n/a
o
Other menu
There are two menus in the .Mari version, since the bottom of the screen can ontv hold
so many cotnmands. The other menu contains the commands Length, Seat ch, and
Next Search. You can add your own commands to this menu.
H
ii/a
Help
Liilike the Atari version, the PE IVCBM version doesn't constantly display all choices,
just type H lo see a list of all options.
K
ii/;i
Kill File
Lets you scraicli a file from within the program.
Z
n/a
—
Flips the character set.
F
Q
S*
Find/Search
Quick Find
Next Seaicli
*Use(0)lber
Mi'nu
You enter ascries of characters you want to find in the fife. In the PEI7CBM version,
all matching lines are displayed. Ptess any key to abort the search. The .At:ii i version
only dls])lays the first occurrettce ofthe match. The Next Search conimand is used
to find the next occurrence of the same search string. You can search either by
character or by line. The character search will search the entiie f~ile characier-tjy-
character for the string, whet e the line search only matches the .search string with
the beginning ofthe line, and is naturally faster. The PET/CBM veision has a
separate command, Quick Find, to search bv line.
L
I.
Leiitrih
Displays ihe number of lines in the file.
Program 1. PET/CBM Version
120 PRINT" (CLEAR) { REV} "TAB ( 15-20* (PEEK ( 2 13)
-79) )"*FIXFILE*"
110 PRINTCHR$(14) ; : POKE59468 , 12
120 MAX=1000iREM MAXIMUM NUMBER OF LINES AL
LOWED
130 DIMAS (MAX) :REM CHANGE TO SUIT MEMORY/FI
LE REQUIREMENTS
140 PRINT" [DOWN}ON WHICH DISK WILL WE WORK?
150 GETD$:IFD5<"0"ORDS>"1"THENK=1-K!PRINTMI
DS("{REV){0FP)",K+1,1);" (LEFT)"; :
GOTO150
160 PRINT"{OFF}"D$
17a OPEN15,8,15:FILS$=" *"
180 INPUT"WHAT IS THE FILE'S NAME?_*{03 LEF
LEFT) "; F$:IFF$="*"THENF$=MID$ (FI$,
3)
190 FILS=DS+":"+F$
200 OPEN8,8,8,FILS+" ,S,R" ;J=0
210 INPUT#15,EN,EMS
220 IFENTHENPRINTEMS :GOTO1420
ECLECTIC SYSTEMS CORPORATiON
Order TOLL FREE 1-800-527-3135
P.O. Box 1166 • 16260 Midway Road
Addison, TX 7S001 • (214) 661-1370
ANNOUNCES
commodore
EM® for the SuperPET
EM® is ANSI standard MUMPS
Make your SuperPET Super-Load
^ in EM® and Dramatically Improve
your Programming Productivity
EM= is moie than just a programming langjage. It is a well integrated data management system combining with one syntax what other operating systems would
call 1) an application programming language; 2) a job control language: 3) a linkeage editor; 4) a database management system; and 5) a communications
monitor.
EM^ provides all programming management facilities needed lo manage programs and program (lies. Programs can be created^ edited cataloged and
debugged from within EM=, Programs can be as large as disk capacity A resident algorithm rids memory of least frequently used variables and program
modules so that what you need off-disk normally resitJes in memory.
EM'^ makes string tiandling easy witti its extensive set of string operations and functions. Variable length strings can be used routinely without the obstacles
presented by most oltier programming languages.
EM"^ can "filter" user input with a useful pattern matching that will result in fewer user or device errors. For example: dates, zip codes and names can
be tested tor valiriity with a single statement.
EM*^ Obviates the need for traditional read and write operations on secondary storage devices by allowing data elements to be directly referenced as a
set of subscripts; all the details of tile organization and retrieval are dandled by the system.
TiimiMP*
EM= enables a programmer to associate liming constraints with several operations. This feature allows testing for terminal malfunctions as well as
prompting users in time -critical dialogue.
DATA BASE MANAGEMENT: ^ ^ , ^ , .,
Sorts and merges are not necessary as EM= automatically stores data in a dynamically allocated balanced tree structure. Random access to any data item
requires at most three disk reads.
EM^ UNMATCHED IN PROGRAMMING PRODUCTIVITY: . , . .
System houses that program in EM'= (MUMPS) find that their costs are lower than those of their competitors using other languages. Fewer lines of code
are necessary per application. Dimension statements ate not required. Subscripts may be alpha, numeric or any legal string. Data types need not be rfefiner]
and can change freely throughout as EM'' can recognize when it is dealing with alpha, numeric, integer or floating-point data types. EM - gives the professional
programmer a full set of software tools designed for real-life tasks and problems he consistently encounters in the production and maintenance of application
software. EM*= adheres rigidly to ANSI MUMPS standards, which make it transponable to larger processors manufactured by DEC, TANDOM, DATA
GENERAL, HARRIS and others. Additionally EM^ gives the less-experienced programmer the tools to do a professional job on formidable programming
applications.
You may order EM® or SuperPET by calling ECLECTIC SYSTEMS toll-free at
1-800-527-3135 from 10 AM to 4 PM CDT Monday through Friday, or you can
order by mall using the form below. Texas residents call 1 -21 4-661-1 370.
ECLECTIC SYSTEMS CORPORATION
RO. Box 11 66, 1 6260 Midway Road, Addison, Texas 75001
Here's my order for EM*@ $299 plus $3.75 for shipping and fiandling (UPS surface unless
specified otherwise}. Residents of Texas, Louisiana, OI<lahoma City and Tulsa, Oklahoma
must add applicable taxes.
D My certified check or money order is enclosed.
D Please charge my VISA # or
MasterCard fl Expiration date
Name
Signature
Address
City
State
Zip
100
COMPUTEI
July. 1982, Issue 26
230 CLOSE0:REM RESETS ST TO 0
240 IFST=64THEN280
250 J=J+1:INPUT#8,A$(J)
260 IFJ<MAXGOTO240
270 PRINT"{DOWN}FILE TOO LARGE" : CLOSES :END
280 CLOSES
290 K=0:SK=1
300 PRINT" {CLEAR} ":K=SK-1
310 K=K+1:IFK>JTHENK=0:GOTO360
320 IFPEEK(216)=1THENSK=K
330 N=K:GOSUB1300:PRINTNS;A$ (K)
340 IFPEEK(216)>=20THEN360
350 GOTO310
360 PRINT:PRINT"COMMAND? " ,-
370 GETCM$:IFCM$=""THENZ=1-2:PRIKTMID$("{RE
REV}{0FF}",Z+1,1) ;" {LEFT}"; :GOT03
70
380 SH=0:CM=ASC(CM$) : IF (CMAND127) OCMTHENSH
=1:CMS=CHRS {CHAND127}
390 PRINT" {OFF} ";CM$
400 IFCMS=CHR$ (13)THENPRINT"{CLEAR} ":G0T031
0
410 IFCM$<>"I"THEN460
420 NS=1:PRINT"(UP5INSERT AFTER WHICH ITEM"
; :GOSUB1310;IN=VAL(IN$) :IFRTTHEN4 5
0
430 J=J+l:FORI=JTOIN+2STEP-ltA5 (I) =A$ (I-l) -
NEXT
440 PRINT"ENTER NEW LINE : " : GOSUB1310 ; I FRT=0
THENA$ (IN+1) =IN$
450 GOTO300
460 IFCM$="X"THENPRINT" {CLEAR} ":GOTO830
470 IFCM5<>"K"THEN510
480 INPUT" {UPlARE YOU SURE? {03 LEFT}";X$:
IFX$<>"Y"THEN290
490 PRINT" {CLEARlNOW KILLING THE FILE...":P
RINTifl5,"S"+FIL$
500 PRINT FIL$" HAS NOW BEEN SCRATCHED. " :G0
TO1420
510 IFCMS<>"D"THEN590
520 NS=1:IFSH=0THENPRINT" {UP}DELETE WHICH I
TEM"; :GOSUB1310:DL=VAL(IN$) :D2=0
530 IFSH=0ANDDL=0THEN300
540 IFSH=lTHENINPUT"{UPjDELETE WHICH ITEMS?
{03 LEFT}"; IN$,D2:DL=VAL(IN5)
550 IFDL=0THEN300
560 Z=1:DI=D2-DL:IFDI<0THENDI=1:Z=0
570 J=J-DI-Z:FORI=DLTOJ:A$ {I)=AS {I+DI+Z) :NE
XT
580 GOTO300
590 IFCMS<>"S"THEN640
600 PRINT#15,"S"+FIL$
610 OPEN8,8,8 ,FILS+",S,W"
620 FORI = 1TOJ:PRINT#8,A$ (I) ;CHR$(13) ; .-NEXT:
CL0SE8
630 GOTO300
640 IFCM$<>"G"THEN680
650 PRINT" {UPjGOTO WHICH LINE" ; :NS=1 :G0SUB1
310:IFRTTHEN300
660 L=VAL(IN$) :IFL<1ORL>JTHEN640
670 K=L-1:PRINT" {CLEAR} ":GOTO310
680 IFCMS<>"R"THEN730
690 PRINT" {UP}REPLACE WHICH ITEM" ; :NS=1 :GOS
UB1310:R=VAL(IN$) :IFRTTHEN30 0
700 IFR<1ORR>JTKEN690
710 PRINT"ENTER NEW LINE : " :GOSUB1310 : IFRT=0
THENAS (R)=INS
720 GOTO300
730 IFCM$<>"P"THEN800
740 IFSHTHENFR=1:TU=J:GOTO760
7 50 DN=4
760 INPUT"FROM LINE, TO LINE";FR,TU
7 70 IF(FR<10RTU<1)0R(FR>J0RTU>J)0R(FR>TU)TH
EN750
7 80 OPEN1,DN:FORI=FRTOTU:N=I:GOSUB1300:PRIN
T#1,NS;A$(I) :NEXT:CL0SE1
790 GOTG300
8 00 IFCMS<>"1"ANDCM$<>"0"THEN840
810 PRINT" {CLEAR} " : IFCM$<>D$THEND$=CM$ :GOT0
180
820 GOTO180
830 GOTO1420
840 IFCM$<>"F"THEN920
850 PRINT"{UP}FIND WHAT" ; :GOSUB1310 ■ SS=IN$ -
PRINT" {CLEAR} ":Z=0: I FRTTHEN300
860 FORI = 1TOJ:FORK=1TOLEN(AS{I) )
870 IFMID$(A$(I) ,K,LEN(S$))=S$THENN=I:GOSUB
1300:PRINTN$;A$ (I) :Z=1:GOTO890
880 NEXTK
890 GETA$:IFA$<>""THENI=J
900 NEXTI :IFZ=0THENPRINT"NOT FOUND."
910 GOTO360
920 IFCMS<>"E"THEN970
930 PRINT"{UP}EDIT WHICH LINE" ; : NS=1 :G0SUB1
310:L=VAL(IN5) :IFRTTHEN300
940 IFL<1ORL>JTHEN930
950 V=1:ZS=CHR$(SH*29) :PRINT"? "; Z$ ; A$ (L) ; "
{UP}":GOSUB1310:IFRT=0THENA$ (L}=IN
s
960 GOTO300
970 IFCHS="L"THENPRINT"FILE LENGTH: "; J ; "LIN
ES.{DOWN5":GOTO1290
980 IFCM$="Q"THEN1430
990 IFCM$<>"A"THEN1020
1000 PRINT"ENTER NEXT LIME : " :G0SUB13 10 : I FRTT
HEN300
1010 J=J+1:AS (J)=IN3:GOTO300
1020 IFCM$<>"H"THEN1270
1030 UL=PEEK(59468) :POKE 59468,12
1040 PRINT"{CLEAR}"TAB(7)"{REV)LIST OF FIXFI
LE COMMANDS {DOWN} "
1050 PRINT"A = APPEND"
1060 PRINT"D = DELETE"
1070 PRINT"D = (SHIFT) DELETE RANGE"
1080 PRINT"E = EDIT A LINE"
1090 PRINT"F = FIND A STRING"
1100 PRINT"G = GO TO LINE i"
1110 PRINT"! = INSERT LINE"
1120 PRINT"K = KILL (SCRATCH) FILE"
1130 PRINT"L = PRINT LENGTH OF FILE"
1140 PRINT"P = PRINT FILE TO PRINTER"
1150 PRINT"Q = QUICK-FIND"
1160 PRINT"R = REPLACE LINE"
1170 PRINT"S = SAVE FILE (DON'T FORGET!)
1180 PRINT"X = EXIT FIXFILE"
1190 PRINT"Z = SWITCH UPPER/LOWERCASE
1200 PRINT"0 = EDIT A FILE FROM DRIVE 0"
1210 PRINT"! = EDIT A FILE FROM DRIVE 1
1220 PRINT" {DOWN} HOLD DOWN SHIFT WITH COHMAN
DS": PRINT"A,E,F,I,Q,R"
1230 PRINT"TO ENTER COMMAS OR COLONS."
1240 PRINT"PRESS A KEY TO CONTINUE..."
1250 GETA$:IFA$=""THEN1250
1260 POKE59468,UL;GOTO300
1270 IFCMS="Z"THENP0KE59468,12+2* (PEEK (594 68
) =12) :PRINT"{02 UPJ " ; :GOTO360
1280 PRINT"{REV}TRY{OFF} A ,D , E , F ,G , I ,K , L, P ,Q
,R,S,X,Z,1 OR 0":PRINT"OR {REV}H{0
OFF} FOR HELP"
1290 PRINT" {03 UP}COMMAND? {UP} "; :GOTO360
1300 NS="tREV}"+RIGHT$(" "+HIDS (STRS (N) ,2
) ,4)+" {OFF} " : RETURN
1310 RT=0:ZS=CHR$ (160+SH* 126* (NS=0) )
The Hard & Soft of It:
If you're into Atari, get into ASAP. Wtien it
comes to Atari, ASAP lias it all — computers,
a full line of accessories, and one of the
most complete lines of software on the
market. Wtiether you use your Atari for
work or play, make ASAP your source. Call
today.
Ttie Atari® 800™ Computer features color
grapfiics and English characters with truly
high resolution, high quality sound, expand-
able memory and sleek modular appearance.
Atari® 400'" — 16K also available: S349.00.
OPTIONAL ACCESSORIES PRICE
ATARI® 410" Program Recorder .... 80.00
ATARI® 810'" Disk Drive 455.00
ATARI® 822'" Thermal Printer 299.00
ATARI* 820'" 40-column Dot
Matrix Impact Printer 279.00
ATARI® 825'" 80-column Dot
Matrix Impact Printer 625.00
ATARI® 830" Acoustic Modem .... 159.00
ATARI® 850" Interface Module .... 175.00
ATARI* Paddie (CX30-04) and
Joystick (CX40-04) (Pair) 17.95
ASAP 16K RAM Module 55.00
COMPLETE SOFTWARE LIBRARY INCLUDES
THESE POPULAR UNITS:
Atari ^
Video Easel ROM 25,00
Music Composer ROM ...42.00
Assembler/Editor ROM .,45.00
ALVRI from ASAP
Mortgage Loan Analysis
Cassetle
, 1h,9h
Stock Analysis Disk
. 19.95
Stock Chiarting
. 22.95
Bond Analysis Disk
.22.95
Mailing List Cassette . . .
. 19.95
Touch Typing (2 Cass) . .
. 19.95
Graph It (2 Cass)
. 17.95
Word Processor
119.00
Personal Finance
.64.95
Microsoft Basic
.75.00
Basketball ROM
. 27.00
Super Breakout ROM . . .
. 30.00
Computer Chess ROM ..
. 32.00
3D Tic Tac Toe ROM . . .
.25.00
Star Raiders ROM
.36.00
Kingdom Cassette
. 12,95
Blackjack Cassette . . .
, 12.95
Biorhythm Cassette . . .
. 12.95
Energy Czar Cassette. .
. 12.95
Telelink ROM
Space Invaders ROM .
Scram
Asteriods
Missile Command
Caverns of Mars Disk , . .
Centipede Disk
Pac-Man
Arcade Plus
Ghost Hunter Cassette . . .
Ghost Hunter Disk
Datasoft
Atari Mailing List Disk
Atari Character Generator
Disk
Text Wizard Disk
Wlicropainter Album 1
Disk
Micropainter Album 2
Disk
Le Stick Accessory ....
24.00
30.00
18.95
32.00
32.00
30.00
35.00
35.00
25.00
.30.00
. 19.95
16.95
89.95
16.95
16.95
30.00
Qn-Llne :
HI-RES Adv#0- Mission:
Asteroid Disk 19.95
HI-RES Adv #2 — Wiz S Princess
Disk 25.00
RoadworkDisk 29.95
Jawbreaker Disk 25.00
Softporn Adventure (X-raled)
Disk 25,00
The Next Step Disk 29.95
Personal Software
Visicalc Dist< 169.00
FOR HOME ENTERTAINMENT
SYSTEMS:
Activision
Dragster Cartridge 18.50
Boxing Cartridge 18.50
Checkers Carfridge 18.50
Fishing Derby Cartridge. . .18.50
Skiing Cartridge 18.50
Bridge Cartridge 23.50
Tennis Cartridge 18.50
Laser Blast Cartridge 18.50
Freeway Cartridge 18.50
Kaboom! Cartridge 18.50
Stampede Cartridge 18.50
Ice Hockey Cartridge . . . .23.50
computer ■
products, inc.
1198 E, Willow si.. Signal Hill, CA 90806
ALL PRICES SUBJECT TO CHANGE WITHOUT NOTICE CALL FOR BEST PRICE
ASAP offers a 15-day buyer protection policy: full money-back guarantee if not totally satisfied.
Ordering Inlormation: name, address, phone: ship by: UPS or Mail. Shipping charge: add S2.90 up to 1 lb. (UPS
blue). U.S. Mail add SI. 50 (U.S. only) (325.00 minimum order).
Terms: We accept cash, check, money orders. Visa and Master Charge (U.S. funds only). Tax: 6% Calif, res..
COD'S and terms available on approval (School PO's Accepted).
Toll free outside California: (800) 421-7701. Inside California: (213) 595^5431 (714) 891-2663
Inside Canada call ASAP Computer Products, LTD.. 1 16 Viceroy Rd.. D-12 Concord, Toronto, Ontario, Canada L4K 1A9 (41 6) 738-0500 (800) 268-1 996
102
COMPUTE!
Juty,»82. Issue 24
1320 IFV=1ANDSH=0THENZ$=" [RIGHT} ":V=0
1330 PRINT"? ";Z5; ;POKE205,0:PRINT"{03 LEFT}
n .
f
1340 IFNS=0ANDSH=1THENPOKE158 , 1 :POKE6 23 , ASC (
" [RIGHT}")
1350 INPUTIN$
136 0 IFIN$=Z$THENNS=0:RT=1: RETURN
1370 IFSH=0ORNS=1THENKS=0: RETURN
138 0 F0RI=1T0LEN(IN5) : IFMID$ ( IN$ , I , 1 ) <> " , "TH
EN1410
1390 REM CHR$(108) IS FAKE COMMA. SAVEABLE "
TO DISK
1400 INS=LEFT$ (IN$,I-1)+CHR$ (108)+MID$ (IN$,I
+ 1)
1410 NEXT:RETURN
1420 CLOSE8:CLOSE15:END
1430 PRINT"[UP}QUICK-FIND WHAT" ;
144 0 FOUND=0:GOSUB1310:IFRTTHEN300
1450 S$=IN$:L=LEN(S$) : PRINT" {CLEAR) " ;
1460 F0RI = 1T0J:IFLEFT${A$ (I) , L) OSSTHEN14 9 0
1470 N=I :GOSUB13 00:PRINTN$;A$ (I) :F0UND=1
1430 IFPEEK(216) >2 0THENWAIT158 , 1 :GETA$ :PRINT
"{CLEAR}"
1490 GETA$:IFAS<>""THENI=J
1500 NEXT
1510 IFFQUND=0THENPRINT"NOT FOUND."
1520 GOTO360
Program 2. Atari Version
106 RB1 FIXFILE-File Editor- vl.O
110 REH Charles Brannon. 1982
120 REH
130 GRAPHICS 0:SETCLILOR 4,9,4
140 DLI ST=PEEK( 566 )+25b:^:PEEK( 561 )+4
150 POKE DLIST-L 7+64: POKE DLIST+2.6
160 POSITIiJN b..0^? "FIHFILE" : POSITI»i 3+
28.0:? "a tile editor"
170 DIM TErP$(36).FIL£$(14>
180 riAX=20w:REM flaxiftiuiTi rmt&- of lines
in the -file
190 DIM DISK.$(f1AX:^.35>.LN<MA:>r;',KEV$(35)
200 OPEN #L4>0/'K:":POKE 752,1
210 ? ■■? "(Pf-ess tRETURHI alone for dire
ctora. )":?
220 ? t? "Enter Filename - 0=
{12 LEFT>";
230 G03UB 1340-SETCuLOR 0.18,12
240 IF TEMP$=" " T^£H i:OSUB 1880 ^RU^i
250 FILE$="D : " : FILE$< 3 )=TEMP*
260 ? ■■? "(2 UP>Readin3 "jFILEt,
270 TRAP 288:rjPEH 1*2,4, 0,FILE$:iXTO 2-90
280 CLKE rd-? ■•? "CUP) Error - ";PEEK(19
5),,: GOTO 220
290 TRAP 350:LIh£S=0
300 WUT #2;TErf"*
310 L=LEN';TErP*>:li+:LIi€S>=L
320 DISK*-< Ln€S-;S;35+l , LIh£S:^35+L >=TEriF-$
330 LINES=LIhO+l = IF LIh£S<riH:>i THEN 380
340 ? :? "{UP> Error ~ File too Larse!";:
GOTO 0
350 IF PEEK(195X>136 THEN 288
360 CLOSE #2
370 CURF^0:POKE 82,0:LD€S=Ln€S-l
380 URAPHICS 0-SETCOLOR 4,9,4:PuKE 752,1
:P0KE 766, 1
390 FOR I=CLJRF.; TO Cli?R+18
400 IF I>LI^£S T^EH POP ^GOTO 458
410 TB1F'$=" 000" : TETIPfC 4-LB+; STR*c: I ) ) )=ST
m. I >
420 FOF; J=l TO 3:TEr-p*(.J,.J>=CHF:i(ASC(TB1
P$(.J>H128):hEKT J
430 ? TEriP$i " " .: DISK$( 1:^35+1 , l:^35+UK I > )
448 h£XT I
450 F'OK.E 76fa,0:FfJSITIOH 0,19:? »{4e r>";
460 POKE 703 . 4
470 ? "■lCLEftR}iEldit iRIeplace lllreert
lOlelete lAip^^end IPJrint lUlrite IQluit
[NIext Pase IGloto 101 the- 1 START I"
488 ? :? "14^ id-,? ";
490 IF PEEK< 53279 )=6 ThEH 1380
500 IF PEEK(764)=255 THEH 498
510 F-^f'EEKC 702): POKE 782, €4 : GET #1,A:P0K
E 702, P
520 IF R=ASC("0") THEH 1458
530 IF AOASCC'E";' Tt£H 588
540 ? "iCLEARlilEDITh l^.icK Line? ";:G0S
Ue 1200: IF H<0 OR N>LIh£S THEH 548
550 ? "LCLEAFJ- Enter ch^anees, prass IRETU
RH!"
560 ? " ";DISK*CN*35+1,N*35+LN<Hj):?
"-LUFO"j:UJSUB 1180
570 GOTO 610
580 IF AOASCC'R") Th£N 628
590 V "CCLEAFOi REPLACE!: I4.ich Line? " ; :
GOSUE liW^IF N<0 OR H>LIh£S ThEH 598
600 ? "Enter new Ur«^":GOSUB 1180
610 LW.. H )=LB-1'; TEt1p:J ) : DISK$( H'i;35+ 1 , tt^35+L
H(H>>=TEMP$:QJTn 330
620 IF H<>A£tX"I") ThEH 678
630 ? "CCLEAFO Insert a 1 ir^ at line: "; :
GOSiUB 1280: IF f-KO OR H>LIh€S THEH 630
640 ? "Pat i erce. ..": LI hES=LIh£S+(LItES<ri
AX>:DISK*(LIHES*35>=" "
650 FOF: I=LIHES TO H+1 STEP -l:TEt1P$=DIS
K$( ( I-l ):i^35+l , 1*35 ) ■■ DISK$( 1*35+1 , 1*35+35
>=TEriPt- : LN< I >=LH( I - 1 ) : t€XT I
t&^ DISK*(N*35+LN*35+14;'="*** IH^BERT U
*":LH-;H)=14:G0T0 388
670 IF ft<>ASC("D"> THEH 738
688 ? "CCLEARj- Delete which line? ";:G0SU
B 1208: IF H<0 OR N>LIhES ThEH 6S0
698 IF N=LIt€S ThEH LIt-ES=LIHES-( LINES >0
):G0TO 380
700 ? "F-itierce. ..":LIhES=LIfES-(LIhES>0
):DISKt(LINES*35+71>=" "
SJB DISTRIBUTORS.
TIE MOST COMPnniyE
PRICES ON COMMODORE
PRODUCTS.
Bcommodore
REGISTER FOR OUR NEW
SOFTWARE SUPPORT SERVICE!
ORDER TOLL-FREE
800-527-4893 800-442-1048
(Outside Texas) (Within Texas)
MASTERCARD, VISA, MONEY ORDER,
BANK CHECK, COD (ADD $5) ACCEPTED.
Add 3% Surcharge For Credit Cards.
In Stock Items Shipped Within 48 Hours, F.O.B., Dallas, Texas.
All Products Shipped With Manufacturer's Warranty.
SJB DISTRIBUTORS, INC.
10520 Piano Road
Suite 206
Dallas, Texas 75238
(214) 343-1328
Prices are subject to change without notice.
AUTHORIZED SALES AND SERVICE
FOR THE FOLLOWING PRODUCTS —
HARDWARE:
SuperPETSP9000, 96K S1
CBM 8032 Computer, 80 Col 1
CBM8050 Disk Drive, 1 Mb 1
CBM 8250 Disk Drive, 2 Mb 1
CBM D9060 Hard Drive, 5 Mb 2
PET 4032 Computer, 40 Col
CBM 4040 Disk Drive. 340K
CBM 2031 Disk Drive, 170K
CBM Memory Expansion, 64K
CBM 4022 Printer, Graphics
CBM8023P Printer, 150 CPS
CBM 8300P Printer, Ltr. Qual 1
Commodore 64 Computer, 64K
VIC 20 Computer, 5K
VIC Datasette Recorder
VIC 1540 Disk Drive, 170K
VIC 1515 Printer, 30 CPS
VIC 8K Memory Expansion
MONITORS:
Panasonic CRT, 13" Color S
Panasonic CRT, 9"B& W
PRINTER PAPER:
9y!"x 11" Continuous, Blank
2700 Sheets, Carton
599 (New)
069
299
,760 (New)
,795 (New)
950
969
525
399
595
769
,750
595 (New)
259
69
467 (New)
320
50
405
144
S 32
SOFTWARE:
QZZ Data Base System (8050) $
Silicon Office
Wordcraft 80
Wordcraft Ultra
VisiCalc
Personal Tax Calculator
Dow Jones Portfolio
Management System (RS232)
WordPro 4+ or 5
The Manager
Galaxy One
Legal Time Accounting
I,R,M,A
B.P.I.AyR.G'L. Job Cost,
Inventory, Payroll
VIC Games Cartridges
V!C Cassette Recreation Pack
VIC Cassette Calculation Pack
289
995 (New)
289
429 (New)
199
59
120
299
199
39
449
380
325 /pkg
23 ea
44
44
DISKETTES:
Verbatim #18158, 5'/4",
SSDD, Hub Ring, Box of 10 S 30
3M "Scotch" #744-0, 5'A".
SS.'SD, HubRing', Boxof 10 33
Memorex #3481 , 5VV.
SS/DD, Hub Ring, Box of 10 28
SJB carries many other lines of equipment and
products. Call us for a free catalogue.
104
COMPUTEI
July. 1962, Issue 26
710 FOR I=H TO LINES = TeF*=DISK$<(I+l>*3
5+l.(I+n:05+35>
720 DISK*( 1*35+1, It35+;S>=TE11>$:LHCI>=LH
(I+1> = ^EXT I^GOTO 380
730 IF ftOASCC'A") THEM 790
740 IF LIHES=mX THEN ? "^CLEftR}Not enou
9h rowrt!":FOR W=l TO 200;NEXT W = GOTO 470
750 CURR=(LII€S-17>*<LIHES>18)
760 ? " {CLEARS Eriter line to be appended =
"=GOSUB 1180= IF TEriP$=" " T€N 478
770 LIl€S=LINES+l
788 LN( LINES >=LEH< IBPt > = Dr=K$( LINES^35+
LLINES*35+LHCLU€S))=TErP$ = G0T0 380
790 IF AOftSCC'P") THEN 870
800 ? "CCLEARJIPRIhlTh Turn on printer.
press iRETURHl":GET tLA'IF A=27 im\ 47
0
810 TRAP 320= CLOSE tt2=0PEH #2.8,0,"P="=G
OTO 830
828 ? "{CLEARIKKLL} Printer- not ready.":
? "tDOtW Press IRETURNi" ^GET #Lr^CLOSE
#2 = GOTO 476
830 ? "Star-tins Line?"; =G03UB 1200 = S=H
840 ? "Endins Line?"; =QDSL!B 1208= IF N=0
im\ hRINES
850 FOR I=S TO N=PRIt^T #2;DISK*(IJ.35+L I
*:S+LtXi;') = HEXT I
8b0 LPRIHT = CLOSE #2= TRAP 8= GOTO 470
870 IF A<>hSC:<"W") THEW 978
8£S ? "-CCLEAR>ltRITEI= S-nue file to disk
II
890 ? "Use same file name? (Y/MV;
900 GET #LA=IF A-(>A:BC("Y") AND AOASCC "
N"> AND H<>27 THEN 9®
918 IF A=27 im\ 478
920 IF A=HSCr'N"> T«N ? " -CCLEAR;) Enter f
ile naine= "; =i:;o:3UB 1340 = FILE$="D= " =FILE*
(3)=TeiP*
930 ? "(CLEAPJSAtJIfC FILE TO ";FILE$
940 TRAP 950= OPEN tt2.S.8,FILE$=O3T0 968
950 ? "CCLEARj-LKLLJ-Disk Error - ";PEEI=;<
195 ::■ = CLOSE #2 = ? = ? "Press 1 RETURN I " = GET
#l,H = GOTu 470
960 FCR 1=0 TO LINES = PRINT #2;DISK$C I:t35
+L I *35+LN':; I > ; = f€XT I = iHJSE #2 = TRlAP 8 = GO
TO 470
970 IF H-=w>ASC( "Q" ) THEH 1830
^j ? "CCLEASliiaJITh rt-e you sere? CY/H
)";
990 GET *LA
1S00 IF ft=ASC("H"> i3R A=ASC<"n") OR A=27
T^€N 470
1018 IF A=ASC("Y") OR H=ASC("y") THEN GR
APHICS 0 = EhC
1828 SITO 990
1030 IF A=ASCC"N") im\ aJRR=CLJRR+19=IF
CURRXIHES 1\&{ CURR=0
1040 IF A=ASC("N") T^e^ 380
1050 IF H<;>ASCC"G"> THEN 478
1060 ? "-CCLEARjGo to whick line? ";=GOSU
B 12^= IF N<0 OR N;>m:^ T^£N 1960
1070 CURR=H=GOTO 388
1080 m\ i Print directory I
1090 ? "iCLEAR}"= POSIT ION 5.6=? "DIRECTO
R'i'"=P0:5ITI0N 20.- 8 = ? "
II
1100 SETCOLOR 0. IKT(16-;{tRND(8>>.10
1110 TRAP 1120 = OFEN #2.6..0/'D = 3fi.*"=GOTO
1130
1128 ? "Can't f^ad directory" = GOTO 1168
1138 TRAP 116e=INF'UT #2;TErP*
1148 ? "-[TAB} ";TE|-F$=IF PEEK(84»15 TH
EN POSITION 8.1=? "{DEL LINE>" = POSITION
2. 15 = FOR W=l TO 18e = h£VT \>\
1150 GOTO 1138
1160 ? =? =? "Press IRETUI^tll to contirKje
II
1170 CLOSE #2= GET #1. A = RETURN
1188 FCIKE 752.0 = ? " ";=I^PUT TEMP$ = P01':
E 752.1 = IF TE^F■$="" THEN TEHF-$=" "
1198 RETURN
1208 F£M GET h MJUBER
1210 TB-F$="0"=FOR 1=1 TO 4
1228 ? "IttliLEFTJ";
1230 GET #1.A = ? " CLEFTV; = IF A=27 Tt€N
POF" =GOTD 470
1248 IF H=126 AND 1)1 THEN ? CHR*<A>;=TE
rp$<l-l>=" " = 1=1-1= GOTO 1228
1250 IF A=155 TI€N POP =G0TO 1288
12S0 IF A<48 OR A>57 OR >4 THEN 1228
1270 TErt=$(I>CH?$(A)=? CHR$(A>;=NEXT I
1280 N=0 = P=1=FOR I=LEN<TE[f>$^ TO 1 STEP
-1 = N=N+< ASC< lBPt< I . I ) >-48 W = P=P*10 = NEK
T I
1290 ? 'RETURN
1380 ? "{CLEAR}START OUER: iVe aou SLa-e?
<Y/N>";=G£T #1,A
1310 IF A=27 OR A=ASC<"N") OR A=ASC("n")
T«N 470
1320 IF A^ASCC "Y" ) OR fr=ASC( "y" ) TFEN RU
N
1330 GOTO 1380
1340 REM GET FILE NAME
1350 TEriP*=" "=F0R 1=1 TO 12
1360 FOR 1=1 TO 12
1370 ? "_aEFT>";=POKE 782.64
1380 IF PEEK<764)=255 TI€N SETCOLOR 0.IH
T( 1 6*RH0< 0 ) ). 10+2*INT< 3*R^Ct< 0 ) > = GOTO 138
0
1390 GET *1.A^? " CLEFT)"; = IF A=155 TVEN
POP =G0TO 1430
1460 IF A=126 AND I>1 THEN TEriP$< I-l)="
"'M-1^? CHR*<A);^GOTO 1378
1410 IF <A<48 OR (A>57 AhC A<65) OR A>90
) AND A<>46 T^£N 1378
1420 TEI1P$(I)=CHR$(A) = ? CHR$(A); =NEXT I^
1=1-1
1430 POKE 764.255
1440 RETURN
1450 REM OTHER COMMANDS
1460 REM ADD YOUR COTtWCfS HERE
1470 ? "{CLEAR>ILier.9tK ISIearch IN lex
t Search"
1480 ? "Ana other key—Othier coftwiands"
1490 ? "Which?";
1500 P=PEEKC 702): POKE 782. 64^ GET ttLA = PO
KE 782. P
1510 IF A-OASCC'L") THEN 1540
1520 ■? "CCLEAR}Lersth of Fne= MlHES+l
i" lires."
1530 ? ■■? "Press IRETURNI" =iET ttl.A^GOTO
470
1548 IF AOASCC'S") THEN 1778
1550
CCLEAR>i SEARCH 1= Enter character
s to search for="
1560 GOSUB 1180= IF TErP$=" " ThEN 470
1578 Kri'*=TEMP$:^K=0
15S0 KL=LE^KKEYI;
1590 ? "<CLE(«}By ICIharacter or ILline?
";=GET #LA:IF A=27 Tf£N 478
1600 TYPE=-1
1610 IF A=ASCC"C"> OR A=ASC("c"> T^£N TV
PE=1
1620 IF A=ASC("L") OR A=ASC("1") im\ TY
PE=0
1630 IF TYPE=-1 TJCN 1598
1640 ? "{CLEAR} Search ins..."
1650 FOR I=NX TO LINES
1660 TErP$=DISK$( 1135+1 . I*35+LN( I > ) = TEM^
$<LEN< TEMPI HI )="
"^REM 35 SPACES
1670 IF TYPE T'rEN 1780
1680 IF TEMP$(LKL>=KFy* TtEN 1758
1690 GOTO 1738
1780 FOR J=l TO 35-KL
1710 IF TEt1P$(J,J+KL-l>=KEY* THEN 1758
1728 f€KT J
1738 YB<1 I
1748 ? "{CLEAR^Not found.":? " aXil'IN}Pt-es
5 IRETURNI":CET iLA = GOTO 478
1750 CURR=M=LI1€S+1:NEXT I
1760 GOTO 388
1770 IF AOAStCH") im\ 478
1780 IF LEN(KP,'$K1 Th£N 478
1798 NX=CURR+<aJRR<LINES>
1880 ? "-CCLEARJISEARCHI for: ■■
1810 ? key$:i:bto 1580 e
NOW AVAILABLE FOR THE APPLE II
All B^ba.
^nb the fortvj thieves
By Stuart Smith
A fantasy role-playing adventure for
Apple 11 and Atari Personal Computers.
Encounter sultans, thieves, fierce and friendly
creatures as you guide your alter ego, Ali Baba,
through the thieves mountain den in an
attempt to rescue the beautifiji princess.
Treasure, magic, and great danger await you!
One or more human players can guide up to
seventeen friendly characters through the
many rooms, halls, and caves. Some characters
wander around randomly, making each
adventure a little different.
ALI BABA AriD THE FORTY THIEVES is written in
high resolution color graphics and includes
music and sound effects. Adventures can be
saved to disk and resumed at a later time.
Auailable for Apple II and Apple II Plus 48K or
Atari 800 32li.
On diskette only — $32.95
FOR OUR COMPLETE LINE OF APPLE AND ATARI SOFTWARE
PLEASE WRITE FOR OUR CATALOG
ASK FOR QUALIiy SOFTWARE products at your favorite computef stoie It neces-
sary you may order directly from us. MasterCard and Visa cardholriers may place
orders by calling us at (2I3| 341-6599- Or mail your ctieck or bankcard number to
the address atMve, California residentsadd6-i sales tax. S/iippin^Ctefies. Within
North America orders must inclurie$l-50 for shipping and handling. Outside North
America tfie charge for airmail shipping and handling is $5.00 Pay in US. currency.
fSn QUTiLny
k£^ SOFTWTlRe
6660 Reseda Blvd., Suite 105, f^eseda. CA 91335 (213) 344-45W
106
COMPUTEJ
July. 1982. Issue 26
This extraordinarily useful Atari Disk technique lets you
elivnnate DUP.SYS and MEM. SAV from 7nost of your
disks and to call a function menu directly from BASIC.
il#
Dennis Keathiey
Webster, JX
It's late at night and you've been working on major
revisions to a huge BASIC program for Four hours.
You finally finish and want to save it back on disk
as ULTIMATE.003 (versions 001 and 002 are
already on the disk). Upon SAVEing it, you get
ERROR 162 {disk full). You think to yourself, "I'll
save it as version 001 since that version is out of
date anyway." You get another error, ERROR 167
(file locked). "Well I'll just type DOS and unlock
the file. After all, MEM. SAV ^vill preserve my
program." So you type "DOS" and sit back to
twiddle your thumbs for a minute or so. Wait!
There's something wrong. There was no MEM. SAV
file on the disk. You deleted it because you needed
more free sectors. Four hours of work are lost
forever.
Save Yourself 88 Sectors And 75 Seconds
Would you like to eliminate the need for DUP.SYS
and MEM. SAV on most of your disks?
The Disk Operating System, version 2.0, is a
powerful and well-designed piece of software. It
also allows you more free RAM for programming
use than DOS 1 by moving many of the utility
functions into a separate file called DUP.S\'S. The
Disk Utilitv Programs are loaded into memory only
when requested by typing DOS. The trade-off is
that the file DUP.SYS (42 sectors) must be on your
disk in drive #1, and it requires 15 to 20 seconds to
load into RAM.
Another trade-off is that the BASIC program
in RAM will be lost unless you have a MEM. SAV
file (45 sectors) on your disk inclrive # 1 , and using
MEM.SAV requires almost a minute longer. Elimi-
nadng the need for DUP.SYS and MEM.SAV saves
you 88 sectors and 75 seconds.
When DOS is booted into RAM at power-on,
the portion that remains memory-resident at all
times is called the File Management System. The
FMS allows you to perform some file manipulation
and directory modifications. The most common
way to do this is to type DOS which gives you the
DOS 2.0 Menu contained in DUP.SYS. Some
schemes have been developed to access the RMS
functions froin BASIC, but they require you to
either remember the exact XIO command or to
have numerous short programs on yoiu' disk that
remember them for you (more time and sectors-
wasted).
Wouldn't it be nice to be able to call a function
menu from BASIC without using additional mem-
ory, losing your BASIC program, or performing
disk I/O?
MicroDOS is a machine language program
that is loaded into page six of RAM (Decimal 1536
to 1791), an area conveniently left to the user by
the wizards that designed the Atari Operating
System. When executed, MicroDOS gives you a
menu of FMS functions, which allows you to select
the function and desired filename. You may per-
form as many fimctions as you wish, and then
return to BASIC. And your BASIC program is still
there, intact.
Program I is the assembly listing. For those of
you who do not have an assembler. Program 2
provides a BASIC program to accomplisii the same
result. If using an assembler, you may designate
"D:AUTORUN.SYS" as the binary output file.
This will perform automatic loading of MicroDOS
when DOS is booted into RAM. If you are presently
using an AUTORUN.SYS file, you may append it
onto this one using the /A (append) feature of the
copy (C) option of the DOS 2.0 menu. The com-
ments in the listings make them self-explanatory.
For ease of use, we "steal" the DOS jump
vector, DOSVEC ($()A or decimal 10) and point it
to MicroDOS. Perform POKE 10,0 and POKE
11. 6. When vou tvpe "DOS", BASIC jumps to the
address specified'in DOSVEC and DOSVEC 4- 1
(low byte, high byte). Now it will jump to MicroDOS
instead. One more detail: when SYSITM RESET
is pressed, DOS restores DOSVEC to the original
value. To prevent this, POKE 5446,0 and POKE
5450,6. DOS will now reload DOSVEC with $0600
(the start of Micr<jDOS) when SYSTEM RESET is
pressed.
Note that the last six lines of the assembler
listing before the .END .statement will cau.se this to
be done automatically when the file is loaded. In
the BASIC listing, the last 16 numbers perform
this. Omit them if you desire and subtract 16 from
the 342 in line two. If vou should desire to reset
DOSVEC so that DUP.SYS may be loaded, POKE
10.159 and POKE 1 1,23. Now, typing "DOS" will
load DUP.SYS, but SYSTEM RESET will cause
DOSVEC to point to MicroDOS.
Upon typing "DOS", MicroDOS will display
the menu:
LOCK
UNLOCK
DELETE
RENAME
frraRI CX>MPJTERS
FLIP'N'FILe
FLIP'N'FtLf h A nuu -t'low+iomjl 4>ti
a^f'i.ciwi Stjnu>? Alston -Tw 4T4RI HOO/SOO
C:nii(i.tfi'r C^iHriJij^iS. £4i:iv tiCihtiTp unit
Cat Nc, 37g£> iZe.95_
ttic J11 wmu- AfcU-i CiJV«piti-^ (or Aiv^
3 '-( " .W't <^ti>r C£Wf\'tdT ). A«4 -Wit k,
4IW5 Icto, iJi*) pn'u.-, if 's -fim^ -tc
C4t NoJgg^- &o» ^io f 39.95
SVNCRO
WOKDMANIA
you. -tike -tM (OTii) . . . kf^eooNl '. liu) Jiin si-
Uctiim -(nnti owv ISW uiwds iiHii owit'-ilii.-
jjiStni^it c>*^iin+iatl<-y Uurls-nriitewoW-
Cat No. 5907 c-^sscitc' $ yf.es
Ui^k \feriian(3508) available
SVNCftO
^LieW H£LL
LiCk,L^V^t... V^LV'J ..'.liUuii ta3 Alibis t*
ujaA ..I ■T<vu- cru^t-n. <Hirt:i. icMifiz 1^ y»ni"
jwi% iwpf. Vjii. jiu.it i,:arcU. -Hti ^lait titukr-
jrminJ. icrnAjyr^i itt irrd^f -to tiivi +<v Miljic
t.Vi_)5t.U>5 •i^J .^KUpt'. Bi.'ajJj'*! Str4ji^e fr<si-
tia-i.'5 (i«d dmJIy -*7/Btg(ls iTjuU K' JrjiW-tif
DrSk Vt'rsiwi^37S f^aiai(4frle-
CANWN CLlMFeR
Vtiu. must f^c.: -tlirif 4iTiii(+ dulfcii^J
5twJ m \jsw unv. .
C<vt N<j.3g53 afetgrit:, )y»tK, 29.95
OrtTASopr
5H0DnN6 mu£Ky
So'V ■Mr tlw HV>t jufvrb ^fjpUu:j Cti^r
.r^i^i jn H,,: Atui umtfuitar. UliHij. luUitiJ.
f ht t'litli li-tWl, J .vi-pniiT a^iAjti y«t.
Cat i\)o.M£>t--' diihi:ti£, jvitk. :9.95
mciFic cmsr m/v
Pt?H is a fust adion ivimc m uihudi
yp« m«st .54/r/i/ c/i»M. Pt;^ imf^uiut i^ff -
t:4M^ j.;iM>A(?J fey Oiir rttFd iunir teiffii .
Once mnL ^iir\it\ie Hv ^jJuiUij . t(«i. i««*
i&lp t(l'(m bmt til rjfi in jnir io ivi>sa Ui^r
Cat Nc. ^t cofffitcAyitk. ^ 2^.95
Ott Ho. se^Z diKketi., -ivrtW. 29.95
^STKOVUAKKIOKS
A-fit>t 4.:iinv pLu|ir v *. pUij^r .^uxif oi^
■b^uk. w\.iS\ your rii£>ii^ 1Hi^^^£c'i, Piijitti v.-wi--
Aiitra.iti>M. . lie t? +ino- pUtKiis MJf) KtKU
in CTW i>r t>iu' iWiii. Ui>M^ JmI bjMU (KcirS.
C*t <Mo, ^SSfc- w*tftt<;, iyjtk. fZ3.9S
^A^^MA 5£>fTWARe:
fJS5^. Am oJiuMJii -fiitioJ t'f HiXKf:' fi-tfc;
Cit No.35gS «*:»/tU, jy/tk. * 2-3.55
ELECn^NICS
WH€N If/SOUWeRN CALIfOmiA, VtStT OUH KEWJL STOHBS
19SU0n$ijness Center Dr.
nORttmidQe, Ca . 9/32H
£50) A«Xes\a Blvd.
OfFec ocpircs Duii^ 51, 1982
SV(VAP5£
CHlCKeM
«ii 4- pesky ^U tV»- bitt(c It jw-t, jj j/i™-
■tni ts j-Aue -ttii^ Lftiii. ikiJtfn pfniUtijn.
A2J)*15 -dvit -rtic -Tfli, hAS -fowiii. Mi lkV'5
aA35, anJ ilu" 13 -tRyCMd -to iAvo- -ilv'm -fi-jiti
hi, J<ilJlM Cil(.-tdiC6. The .XiiiM 3t-t5-fj5t-
fea-flAL-rj; -PUl. L;liKkJns SHiutvk, iinX ^IL
\>eA.Li.m, hri^ki U»i^.' a . » >.
Cdt NO. 3eoe caheiLc, yitk. $ 2$.$5
CAtUo.?3^SdbtM!iii:,yv^tK. 2^.95
KACe IN SPACe
t)<m. »tuiid -Hat inUij Ji/cxii -i<u: fHyriii of
Catr4o.3g35A»kdk,V«»tk^) ZH35
cmarra? co«e 50Frw«£
yAHTMAN
popuCr -fVr ^taws, Otw-fcj-ftntr pUJi^^s,
ft;k»t 4^ ojLi -"p, wtJij cjwpirti' -fxn- -Ou
HOW TO OKPeK
Wsa, OR C.O.D. t*ia -^150 f<frCO0.)
SENP OROeRS TO:
HW ELECTRONICS, INC
nSV 6U5/NE5S CT«. DR.
Dept £^=?-
NOftTHRIDi^e, CA. 9152-4
rOiJiFR£E U5A (800)^25-53S7
WSIDE CALIF (115)830-9200
Mention -Hiis ad and \^ie pay shipping CuRS grovrid cmUj)
108
COMPUTE!
July, 1982. Issue 26
FORMAT
MENU
ADOS
BASIC
Note: Underlined letters are inverse video.
Enter the command vou desire (only the first
letter is necessary). You will then see:
FN?
Enter your filename and press RETURN. You
must enter the "D;" or "D2:" at the beginning of
yoin- filename so that FMS will know whicli drive to
access {do no( use t]uotes, as in BASIC). The func-
tion will be peiformed and the menu will reappear.
Note: if you selected REX.-VME, the correct
filename input is "Dl:fiil,fn2". Only one "Dn:" is
needed and the comma is required.
It you selected FORM AT. instead of FN? you
will see:
FD#
to warn yoti that the information on the disk will
be destroyed. Type "D T'.RETURN (or D2.D3,
etc.) to formal, or anything eKsc lo abort iormalting.
If you selected MENU, you will see:
D#?
as a prompt. Enter the drive number (single digit)
from which you wish lo see a disk director)-, and it
will scroll across the screen. Use CTRL 1 to
momentarily halt the scrolling, and C FRL I to
resume. The directory will sta\' on the screen until
you press RETURN once more.
Making Use Of The 6502 Stack
Selecting ADOS will allow you to load DUP.SYS in
the normal way if you have a need to do that (and
you shouldn't often!). As a .safety feature, to select
this fiuiction you must type the first two letters. If
you enter an invalid filename or if FMS is unable
to perform the function, MicroDOS will Just return
to the ">" prompt. To return to BASIC, type "B"
(or anv other letter that is not a selecticm letter).
The most diflicult part about writing Micro-
DOS was fitting it inU) just one page (256 bytes) ol
RAM. Due to this constraint, a Disk Directory
option could not be included in page six. In order
to add this feature, the MicroDOS selection menu
and input buffer had to be moved to the beginning
of page one. What? You thought page one of RAM
was used by the 6502 microprocessor as a stack
area? Well, it is, but the 6502 will never need more
than the top one-third. So we will use the bottom
one-third.
If you sj>end a portion of vour time |)rogram-
niing in BASIC, you will probably find MicroDOS
well worth the dme spent typing it in. It has saved
me much time and frustration.
Program 1. Source Listing
0160
0110
0120
0130
0140
0150
0160
0170
01&'0
0190
0200
0210
0220
0230
0240
0250
0'2'b0
0270
0280
0290
0300
0310
0320
0338
0348
0350
0370
0380
0390
8408
0410
0420
UtU
0430
S440
6450
0460
0470
0480
.TITLE "niCRu-DOS"
REM COPVRIGHT 1982
REM ALL COririERCIAL RIGHTS
REM RESERivED BY DBHIS ^:EATHLEY .
.OFT MJE-JECT
DEFIl-lE EQUATES
*=$0342
ICCMD ^=*+2
iccMDi=ii:;criD+ib
ICEAL *=:^c+l
ICBhL1=IC:BAL+16
ICBhH :^;=:¥:+3
IC.BhH1=ICBAH+16
I CELL ;^=:^:+l
Il:BLL1=ICBLL+16
ICBLH :*=*+!
ICBLH1=ICBLH+16
ICAXl t^^-+\
ICAX11=IChK1+16
ICAX2 :^=:¥:+l
r:I0l..i=$E456
0PEH=3
CL0SE=12
l£TC=7
PUTC=11
bETK=5
PUTR=9
E0L=155
CLR=125
Tf«=127
; *:^*:i;:S^;^it; MICRODOS SOURCE CODE tt
^=$0600
DISPLAY MEW m SCREEH
0508
6510
0528
8530
0540
0550
0560
^.70
£680
^98
6680
8610
K28
INIT
LDY #rEUF&255
ld:>'. #Euri-MBUF
LDA iPUTC
JSR; Ii:iE2
«CEPT CCiMIAHD
GRAB
.ISR: INKJT
; EXECmE COM-IAND
JS.R lOP
BFl INIT
EtII GRAB If CIOU error. Y>i:
July, 1982, Issue 26 tX
>MP«TH
109
0630 ;
1180
JSR
I0E2
0640 ; nPUT CCtrrROL ROUTI^t
1198
RTS
0650 ;
1200
/
0660 IHPUT
1210
J
EXIT AND I/O ROUTINES
0670 ; aiT F-FOIPT m SCREEN
122-0
f
06£« LDY #r^JF&255
1230
EXIT
0690 ld:>=: #2
1240
LDA
KBLF
0780 JSR: Q
1250
crp
#77 Directory Re=iuest?
0710 ; GET COrtlAHD CHOICE
1260
Bt£
DOS N.3. 90 to DOS
0720 .m. IH
1270
Uf{
#QBUF+5&255
0730 Lffr #6
1280
[Si<
#3
0740 STY ICK>ni To "open directory" lit
1290
JSF:
Q FXit D#? proftiF-t on screen
er-
1300
LD-.^
#SEUF+U<255
0r'b0 LOOP
1310
LDX.
#1
0760 CCy'
1320
LDA
#GETR
0770 EEQ EXIT
133fi
JSR
l!DE2 Get dri>.^ #
07&3 LDh fHSCII-hV
1340
LD-y
#58
0790 GV KBLF
1350
S?!*
3BLF+2 Restore colon
^00 &E LKP
1360
m'
#SBUFa-255
0810 IDA CMD-l.Y
1370
LDA
ttOFtH
0820 F-Hh Saue coiMiard #
1380
JSR
l(P2 Open directcs'-y
0830 OP #$FE
1390
AGAIN
©40 E^€ cm
1400
LDA
#19
0850 j lERIFY FORmT COtiriAND
1418
STA
ICBLLl
0360 LDY #QBUF+5i:255
1420
LDA
#bLlR
K70 LDK #3
1430
JSR
l&' Get direiitora entry
©80 JSR Q
1440
BUI
THFU Last entra? Go to lW\i
8890 J5R IN
1450
LD--,'
#t=HJF-lg<255 Tab is first chara
0500 LDh KBUF
d&r-
0510 Crp #68 Is first letter a "0"?
1460
LCK
#20
0920 &E EXIT \\o> ther, lei'.'e fllCRO-DOS
1470
LDA
SFUTR
0930 EEQ RT
1488
JSR:
IuE2 Put directory entry on sc
0940 COt-IT
r-een
0358 } PUT PROnPT ON SCREEN
1498
BFl
AGAIN Go set another et'itry
&?£B LDY #i!BUF+2&255
1500
T}*'U
0970 LD>=; #3
1510
LDA
#CLOSE
89S!0 JSR Q
1520
JSR
I OF" Close directory
0990 J GET FILENAME
1S30
JSR
IN L'hit for RETURN pressed
1000 J3R IN
1540
JTIF
I HIT \jj to selection mnu
1010 RT
1550
J
1020 FIR Retrieve FMS coiviiiiand
1560
DOS
1830 RTS
1570
crp-
#65 Is DOS desired?
1040 ;
I5ei0
&£
BASIC No., exit tllCRODOS
1050 ; PROMPT m SCREEN ROUTINE
1598
LDA
#68
1060 ;
1600
CtF-
KBUF+1 A.dditional check for sa
1070 Q
fety
1080 LDA #PIJTC
1610
B^E
BASIC
1690 JSR IDE
1620
Jff-
6&47 Load DUF'.SYS
1100 RTS
1630
>
1110 ;
1648
BASIC
1120 ; EDITOR LIf-€ IN ROUTIfC
1650
JTP
*A04D to-Ill start entry
1130 i
1660
f
1140 IH
1670
lOE
1150 LDY #KBUF£.255
1680
PHA
1160 LD:-^ #40
1690
LDA
#QBUF/256
1170 LDA #L.L1R
1700
STA
las^H
110
COMPUTfl
July, 1982. Jssue 26
1710
1720
1730
1740
1750
1760
1770
1788
1750
1800
1810
1*520
1330
1540
1358
1860
1870
18£0
1830
1900
1910
1920
1930
1940
1950
I960
1970
1980
1998
2000
2010
2820
2030
2840
2850
2060
2070
2098
2110
2120
2130
2140
2150
2160
2170
2188
2190
2200
2210
2220
2230
2240
2250
2260
Etrr
Sr-i' ICBAL
STX ICBLL
LDX #0
SIX ICBLH
STX ICBLHl
EEQ 10
IUE2
f-hr
LW #KeUF/256
STA ICBhH
STft ICBhHI
BE £m
ioF
LDY #KBIJF&255
lLf2
STY ICBhLI
LDX #110
10
STA ICCtCX
XF: CIOU
; DEFIf€ MEHU HUD BUFFERS
ASCII
.B'y'TE 76.85.68.82.70
cm
. E'-iTE *23 . 124 .. *2 1 . t20 . IFE
GeUF
.BYTE 29. ">FN?M98. "[*■"■"
; PUT 1\£ REST IN PAGE 1
:^;==$100
SBUF
.BYTE "Dl-:i-.t".EuL.TAB
KBUF
t=*+29
flBUF
.BYTE CtR.204."OCK".EOL
B^.'TE 213."HLGCK".El!L
.BYTE 196."ELETE".EnL
BYTE 210."ENhME".EliL
BYTE l98."CiRt1rtT"..E0L
B'Y'TE 2'05."BIIJ".EUL
B'y'TE 193.1%."0S'V.EuL
.BfTE 194/'rtSIC"..EuL
EOt'l
;«:=10
B^/TE 0.6
i'=5446
.PfTE 0
^.=5450
.E^'TE 6
2270 BCl
Program 2. BASIC Loader
1 OPEH #1.8.0; "D = mCFlO0S. OBJ"
2 FOR 1=1 TO 342
3 READ A
4 F-UT #1,H
5 t€XT I
6 EHD
10 DATA 255.255.8.6.253.6.168.37.162.59.
169. 1 1 . 32. 209. 6. 32. 19. 6. 32. 221 .6.16. 239.
48. 246. 160. 245. 162. 2. 32. 84. 6. 32. 98
20 DATA 6.160.6.140.90.3.136.240.63.185.
234. 6. 205. 8. 1 .-288. 245. 135. 239. 6. 72,2'01 . 2
54. 208. 19. 160. 258. 162. 3. 32. 84. 6. 32
30 DATA 90.6.173.8.1.201.68.208.30.240.1
0. 160. 247. 162. 3. 32. 84. 6. 3'2. 90. 6. 184. 96. 1
69. 1 1 . 32. 186. 6. %. 168. 8. 162. 40
40 DATA 169.5.32.20"5.6.96. 173.8. 1.201.77
.208. 62. 168.251. 162.3.32.84.6. 168. 1. 162.
1 . 169. 5.32. 209. 6. 168. 58. 148. 2
50 CW^TA 1 . 160. 0. 169. 3. 32. 223. 6. 169. 19. 14
1 .88. 3. 169. 5.32. 221 .6. 48. 1 1 . 160. ?. 162. 26
. 169.9,32.209.6. 16.233. 169. 12
66 DATA 32.221.6.32.90.6.76.0.6.201.65.2
08. 18. 169. 68.205. 9. 1 . 2^.. 3. 76. 159.23. 76.
77. 160. 72. 169. 6. 141 . 69. 3. 184
78 DATA 140. 68. 3. 142. 72.3. 162. 0. 142. 73.3
. 142. 89. 3. 240. 19. 72. 169. 1 . 141 . 69.3. 141 .8
5.3. 104. 208. 22o. 168. 3. 140. 84. 3
88 DATA 162.16.157.66.3.32.86.228.96. f'6.
85. 68. 82.70. 35. 36. 33. 32. 2-54. 29. 62. 70.78.
63. 198. 68.35 .63. 8. 1.7.1. 6.8
90 DATA 49.58.42.46.42.155.127.37.1.86.1
. 125.2'94.79.67.75. 155.213.78.76.79.67.75
. 155. 1%. 69.76. 69. 34.69. 155. 218. 69
\m DATA 78. 65. 77.69. 155. 198. 79. S2.77. 65
.84. 155. 205. 69. 78. 8j. 155. 193. 196. 79.83. 1
55. 1'94. 65.33.73. 67. 155. 18.0. 11.0.0
110 DATA 6.70.21.70.21.8.74.21. M.2i. 6
,^, ALL ATARI ■
HARDWARE 1S%-25%
OFF LIST PRICE
Atari 800 16K ''40.00
Atari 400 16K 359 00
Atari 410 Cassetle 80.00
Atari 810 Disk 480.00
ATARI® ACCESSORIES 10%-20% OFF LIST PRICE
8K Memory Board -lO 00
16K Memory Board 8.0 00
Joysticks (pair) 1 9 00
Paddles(pair) 1900
A
To offler Call 61? 9%A 30SO
A5k for mail oidet ai wnie
BBI Mail Order
CO Boi 365
Newlon Highlanils. MA Q?161
(617(96J3080
PLUS 10°/o207o OFF
ALL ATARI- SOFTWARE
ALSO 3h[i party HARDWARE
AND SOFTWARE AT
COMPARABLE SAVINGS
tele- . ^.
communications
for the Atari 400/800
Send E-mail, download programs and files, chat, buy
merchandise, access the Source* and other exciting
data bases with the MICROCONNECTION. a quality
direct connect modem for your Atari 400/800 The
Autodial/Autoanswer MICROCONNECTION auto-
matically dials other computers and answers tool
The bussdecoding MICROCONNECTION eliminates
the need for the 850 Expansion Interface* and the
"obsolete" acoustic coupler Terminal software
included
Bussdecoding MICROCONNECTION Aran 400/800 S249 00
with Auiodial/Autoanswer S279 00
RS-2 3 Z MICSOCONNECTION for Atari 400/800 S 1 99 .00
wii h Autoddil/Auioanswer S 239 OO
TSMART (Smart terminal programl S 79 95
TYPER-A (Users MICROCONNECTION to drive serial S 19 95
printers to provide printed output and listings |
the micropenpheral corporation
2643 I5lsr PI N E„ Redmond, WA 98052
(206)881-7544
"ATARI HAS THE CAPABILITY-
ACE GIVES YOU THE KEY"
RIGHT IN YOUR POCKET!!
.Mi££-^'i|16 comprehensive pages
• error codes
• basic commands with
abbreviations
• peek and poke locations
• internal codes
• mactiine language aides
• mucti, mucti morel! .
Get Yours Now ** og
(dealer ad space available)
ORDER NOW-CASH, CHARGE OR C.O.D.
ADVANCED COMPUTING ENTERPRISES
5516 ROSEHILL ^^
SHAWNEE, KS. 66216 ^/^
^ (913)262-2675 • (913)631-4180 ^^
ATARI IS A REGISTERED TRADEMAI?K OF ATARI INC
£.<g.g.^l^^^^^^Z^^A^A^AJA^A^^^A>AJ^^A>A^A^JC^A^X?X>X'X'X'^X'^^X'^^X'XH1fc|
\Put any machine language file on a boot cassette, impossible yousay?^
not any more!
Si
introducing
NUDMEHI SOFTWARE'S
BOOT CASSETTE MAKER
for the ATARI® 400/800 computers
BOOT CASSETTE MAKER places ANY dos
binary loadable machine language program
on a boot cassette.
BOOT CASSETTE MAKER converts even
MULTIPLE machine language files to boot
file format and then places them on a boot
cassette.
BOOT CASSETTE MAKER creates a boot
cassette on which all run and initialization
jumps are executed.
BOOT CASSETTE MAKER is user oriented,
fully documented and written in machine
language.
$29.95
(POSTAGE INCLUDED)
To order, send check or money order along with your name and address to:
NUDMEHI SOFTWARE
495 OLD YORK ROAD, SUITE 425
JENKINTOWN, PENNSYLVANIA 19046
(215) 635-2722
Our order lines are open 24 hours a day.
MasterCard Gladly Accepted.
^ Pennsylvania Residents Please Add 6% Sales Tan
ATAHI' IS a trademark ol ATARI INC,
Dealer Inquiries Invited
^
h
VLdrdrdrdrdfty^yyyfVtycy'cyyy^jfrycyrV-eyryryry.yVry.y.yryAy.y.yyv-.y^
I
ft
112
coMPum
July. 1982, Issue 26
The past, present, and predicted future of the VIC. Jim
Butterfield, an internationally recognized expert on
Commodore Computers, discusses VIC software, add-ons,
and VIC's place in the world of computing.
Whither VIC?
Jim Butterfield
Associate Editor
VIC has been around fof about a year now. It is
catching on? Old hat? Will it survive in the turbulent
marketplace?
A Little History
The fust VIC units had problems. Some were
physical in nature. The unit ran too hot — you
could hardly touch the ROM plug-in area. The
picture was of poor quality. Radiation emission
standards were not met. These were cleaned up in a
redesign.
VIC had another problem, too. People didn't
perceive it as a computer. I'here were few programs
available, and the only peripheral was cassette
tape. Memory was limited, and memory expansion
was a distant promise.
And to top it all off, VIC was an unknown
quantity. The VIC-20 User Guide — the "friendly
computer guide" was brightly written and by far
the best user documentation that Commodore had
yet ptit out, but it was limited in scope. A Program-
mer's Reference Guide was hinted at, but seemed
slow in making an appearance.
By late summer of 1981, the hardware prob-
lems had been resolved, l)ut the VIC had still not
established itself as a mature product. Disk, printer,
and modem were still promises. Software was still
limited,
VICs sold in quite respectable numbers during
the Christmas season. A number of games had
materialized, allowing the machine to be nicely
demonstrated. The economical price and educa-
tional potential seemed to appeal to inany buyers.
In early spring of 1982, VIC suddenly started
to grow up, and a new class of users developed an
interest in the machine, not as a game, but as a
computer.
New Hardware
The 1540 Single Drive Floppy Disk unit made a
dramatic appearance. It looked good and behaved
well. It proved to be compatible with the C^ommo-
dore 4040 units, allowing easy transfer of programs
and data files. Speed isn't up to the PET/CBM
standards, but for most applications it's quite
usable.
Printers are now available in limited quantities.
The style is familiar to the Commodore user, but
the price is more economical.
Other devices are on the horizon, .\n IEEE-488
interface, which allows connection to the PET/C^BM
range of machines, has been demonstrated. An
inexpensive modem is almost ready.
Several sizes of memory expansion are on the
shelf, from the tiny 3K to the huge 16K. A mother-
board system is promised soon which will allow the
expansion of the VIC to a full 32K system. On the
full system, BASIC will have about 27,500 bytes
free; not quite as much as a full PET, but enough
for most of us. The remaining memory isn't avail-
able to BASIC, but can be used for high-resolution
screens and other special applications.
New hardware is appearing from non-
Commodore sources. It looks like there will be two
types: some will extend the capabilities ol the VIC,
making new things possible; and others will com-
pete with existing products, hopefully keeping
prices interesting.
New Software
Commodore has now made available three major
software support modules: a Monitor to allow
machine language program writing and debugging;
a Super Expander, to make graphics easy; and a
Programmer's Aid to help in the writing and de-
bugging of BASIC programs.
These three modules are not essential to the
VIC's operation. You can write machine language
wilhout the Monitor; you can draw^ graphics without
tlie Super Expander; and you can cerlainly write
BASIC without the Programmer's Aid, But a job
can be made much easier with their help.
The Super Expander, in jDarticular, seems to
be very popular among programmers with artistic
inclinations, (lompuler art, geometric figures, and
animated sketches have been enthusiastically pro-
duced by users.
The initial games library is being beefed up
with new offerings. 1 have seen several prototype
games which are nearing release and they look
good -an order of magnitude better than the
satisfactory, existing games on pkig-in ROM
cartridges,
I'm pleased to see good quality programs
coming from non-Commodore sources. There's a
lot of good stuff already out (see Table 1 ) and
high-quality programs are a vote of confidence in
the VIC by the software houses.
New Information
Commodore has now released the Programmer's
. Reference Guide, which contains a great deal of
reference information on the VIC. That's the kind
22-40-80 HIKE!
5i»^™I^^^li36CT)i.ZWTBil.'3«VW12»™«»«--«'»«'"
Expand
your
VIC to 80
columns.
jk
Quantum Data's new Video Combo Cartridge brings you: 40
or 80 column display, plus 16K RAM and PROM socket
With the Video Combo Cartridge from Quan-
tum Data you can now have 40 or 80 column
display 16K RAM and PROM all in one cartridge.
It comes set for 40 column Display compatible
with the VIC videcfmodulator and your home TV.
Then, when you are ready to upgrade to 80 col-
umns and a video monitor, Just make a simple.
$299*
no-cost change inside the cartridge. Instruc-
tions are provided. Also provided is a socket for
a PROM, 16K of memory and AC adaptor. If
you don't need memory, then 80 columns can be
yours for only S199.50. A listing of the driver soft-
ware is provided at no charge. A programmed
PROM containing this software is also available
for $19.95.
QOI
^'2 expander:
QDI Printer
RS-232
interface:
QDI
Minimother:
• Expands Basic user memory up to
24 K in 8K steps
• PROMS may be mixed w/ith RAM
in 8K blocks
• 8K can be assigned to machine
language area
• Plugs directly into VIC expan-
sion port
• Low power, no additional power
supply required
• Professional Quality, full buffering
on all signals
• Small size: 6 x 4.5 inches.
16K expander $149.95
24K expander $199.95
VISA and MasterC<rrcf accepted.
• Provides RS-232 voltage conver-
sion for VIC serial port
• Allows use of a wide variety
of RS-232 peripherals including
printers, modems and voice
synthesizers
• Low power CMOS circuitry
requires no external power supply
• Small size: 2',^ x 3 inches
Printer $49.95
• Adds 3 slots to the memory
expansion port
• Removable card guides allow
either boards or cartridges
• Requires no additional
power supply
• Fused to protect VIC power supply
from overload
• Simple plug-in installation
Minimother $69.95
QUANTUM
(714) 966-6553
n A T A I U P DEA'-^R HOT LINE 1 714) 754-1945
Urt I ft, Inlr. 3001 Redhill BIdg. 4, Suite 105, Costa Mesa, 0\ 92626
114
COMPUTEI
Julv, 1982. Issue 26
Non-Commodore Software
This is software that I've seen that looks good.
There's undoubtedly lots more. All games listed run
in the 5K VIC.
Amok— Nicely aniniatt'd joystick, c.liase game.
Similar to the artade game Befserk.
United Microware Industries, Inc.
3431 H Pomona Blvd.
Pomona, CA 9 1768
VIC Pics — Many hig'i resoluiion pictures derived
from TV camera. With cxplanaiorv booklet.
Nice .slide shou' for your friends.
Vn-Word Processor — ?>\n\\>\t:, but does llie joli.
Needs printer, olcotirse.
Midwest Micro Associates
P.O. Box 6148
Kansas City, MO 64 110
Siuikmnu — Fast joystick graphics game. Similar
to the arcade game Pacman.
Microdigital
752 John Glenn BKd.
Webster. N\' 14580
The Qidw— Draws, scrambles, and solves the
Rubic's Cube.
Qumax
GRW Laboratories
P.O. Box 17010
Rochesier. NY 1 46 1 7
of resource we need to exploit the capabilities ot
the macliine.
On the learning level, Commodore has released
An Introduction to BASIC. Thi.s is a lieginnef-ieN-e!
text wliich comes as a Ijook and two cassette tapes.
At first glance, it looks quite attractive.
What Next?
It looks good. Users are now seeing a computer
system rather tlian a toy. There's a new level oi
interest in the VIC.
Are there clouds on the horizoti? Commodore
has announced new products — in particular, the
Ultimax and the Commodore 64 - which have new
capabilities (and some of the new features won't be
VIC-compatible). Will VIC be obsolete before it
really gest started?
I think not. In their first incarnations. Ultimax
and Commodore 64 won't be direct competitors.
Ultimax is too small, and the 64 is twice the price.
More to the point: it will be some time before these
products mattne, just as it took the VIC some titne
to reach its present state.
I suspect that it will be a couple of years before
VTC begins to fade away from the retail market.
To a buyer interested now, that makes it a worth-
while investment. Less than S30() for a couple of
years' comptiting? A bargain price. Indeed, in this
technology-driven era, it would be optimistic to
expect any machine to have an economic life that's
much longer.
The box isn't the only part of the question,
however. If you move on in two years, how com-
patible will your software be? The Commodore
line has been relatively stable for some time. There
are occasional grtimblings from long-time users
(tnysclf included) when Commodore introduces an
improved line which calls for adjustments in some
specialized programs, but most programs move
fairly easily. Cominodore's adoption of the "Kernal"
standardized program system is likely to help.
Some things aren't likely to transport. Those
plug-in games, for example, arc in ROM memory,
and can't be trimmed up for a new machine. That's
OK ... keep the VIC for the games, or delight the
kid who eventually buys your VIC by tossing in the
games as part of the package.
At a compuler club meeting in 1976, I asked a
member what type of system he had. He replied,
"I'm waiting for prices to drop to zero." I dt^n't
know if he's still waiting. Btit prices are down to
tlic point where obsolescence in a couple of years
shouldn't be an important factor in the decision.
Exciting things are happening with the VIC.
There are user groups, there are lots of programs,
and new hardware is appearing very quickly. It's
going to be ftm. ©
/Vff^fi^A Educational Prograr
Voor Pet For
$48
Programs
For Your Pet For Only
%r''w ^^^ /(9/
For 8 Issue Subscriptions/i*
/S' ■'
Each ' MAtA comes to you on '
cassette with 4 brand new pro-
grams to load ond run on your
Pet. /
svsTEms, inc.
P.O. BQH 325
miLFDBO, (TllCHiUfln A&QAP
[313] Sfl5-aH3
GAMES FOR YOUR VIC
VIC TREK* HANGMAN
TANK • YAHTZEE
DAMSEL* NAB PLUS
AND MANY MORE
*/$7.95
Each
pFREE Program Summaries available
NEW SOFTWARE
VORTEX'
^A
TM
^4f
The enemy Is at the center of swirling rings of energy.
Your mission - penetrate and destroy.
*PHANTOM FIGHTER
Defend Superstition Mountain from UFO's.
... Each $17.95 on cassene ...
TM
M'flGIE E'flRPET
P.O. Box 351 15 Phoenix, AZ 85069
GAMES FOR VIC-20 ALSO AVAILABLE
» TWO 6AMES-57.95
\SPACE LANDER*Hore than just a
I game. This program presents a "real time"
6 simulation of a spacecraft landing on var-
ious heavenlv bodies, The computer analyses
■ and scores successful landings. Contains
9 Color, Sound and Graphics.
OlJCJ / O l/lf /// I C *Nii:i-like game pits you
against the VIC. Flip dots all uhite and you
win. Contains Color, Sound and Grapnics.
Send chectc or raonev order(S7.95 for both games)
DTC SOFTWARE
P.O BOX 916 508 752-343i
JANESVILLE, Wl. 53547
V
I
6
■
2
0
EXPAND
YOUR VIC-20
for only
54995
THIS NEW
CARTRIDGE
EXPANDER BOARD
PLUGS INTO THE SINGLE EXPANSION PORT
OF THE VIC-20, AND PROVIDES THREE
SWITCHED EXPANSION PORTS FOR SELEC-
TIVE OR Slf\ylULTANEOUS USE OF ANY VIC-20
CARTRIDGES. ADD MEfVlORY, PROGRAMfVlERS
AID, SUPER EXPANDER, GAMES, WORD
PROCESSOR, OR WHATEVER YOU CHOOSE,
SEE YOUR DEALER OR ORDER FROM:
(801)487-6266
PRECISION TECHNOLOGY, INC.
GOfvlPUTER PRODUCTS DIV.
2970 RICHARDS ST.
SALT LAKE CITY, UTAH 84115
COD
VISA
M'C
miDUJEST miCBO
UN-WORD PROCESSOR ... $14.95
What che do yoij coll o progrorn which doei what a word
processor does, yet »t 15 |ust iqo simple pnd eo^y 10 use?
Enter Text. Edpl . - , Li^t . , . Save . , . juit like 0 progrom,
Send to prinrer far finished copy. Save paragraphs
ieparotely, then me'Qs m Oi^y order for pnniling. Re-
quires only two line^ oi BASIC to occess the M/l coufinei;
over 3K avoilable for text. Con be used with memory
expansion. For ViCl515 or RS-232 printers.*
TERMINAL-40 . . . $29.95^
NEW. impio-aed TERMINAL ^0 progrcm ditployi^ JQ uppe^cobe chor^
Qctcr^ p«( line (3^6 doi motfi») for easier tpadmQ Erkoblet VtC to
emulofe o Mofidoid lefminal. Add o 6(ZC0mP o' ViC modem
<or ftS232 modem wiih inrerfoce" ) and Cicce» SOURCE TELENET, or
ony o( the free Sjllehn Boord^ around the country {lit inrludedj. 300
boud; (ull 01 holf duplex; iLipporls conlroi ■codei; screen dump to
pfinfei Requirtfi VI^C-20 and SK memory expanior
TERMINAL-22 ($14.95) Same oi feRMdOe«epr23
;harattet hneiond lull duplex only Run» on iiondoid SK ViC.
GRAFIX MENAGERIE ($11.95). Ocp.cr.ii,o*^^bo^yo-.^£300m.rodf condc^Twcprn^.or
wrt ufiieaihes VlC's ^itJphJcs. SHOWOFF contoins Cobr KolBdosrope Arcodc Critrsii. Cusiom Fonn.
EiecTfonki Schemafic, and AWirr Notofion PtOTTtNG uies dot-ptcn pnd iine-pJof roytineii to mate equo
hons perform computer video ort on youi scraBn ChoTige equation volt^^i pnri <rsolc your own mleFe^linc}
potterrti. Pfot routinci moy be eaiiiy induded in your o'^r) pragromi.
BANNER/HEADUNER (514.95). Tv-oprogrom wtmoiiei giant heodlines and bortne.^ on
yovr printer. MEADUNER pnnis latgw chorotteri ocrost rhe paqt in fhree liroi. BANNER furns the
^haroct'Cr* ttdewoys, pnnt+ng continuously down the p'Qper roll. Up 10 thre* linot of !«»?. rteorly Lrnl^mhted
in lenQth. {How oboyl a ten-foot king "WELCOME HOME"?) For VlC-1515 Or RS 232 p.^rtieri.'
IICKERTAPE ($14.95). imerrypt-drivent Wotchyoyf fnewofle glide smoorhly ocroij The screen in
ceJof. Add* moJion ortrf iflteres* 1o ony mssioge duploy PojJtion on ony line, even mix wiTh noimal
panting. Two buUt-tn cKarotte'- wt»: ito'^doi'd orid BOLDvor uis cirtlom leti (rom our UBSAftY VOi. 1 !
M«,<.B. capacty: e IK byr.. UBRARy vfJL. 1 ($12.95). Add „yl, ,o d.,pia,> -.h „.
fuiJ lets of <Lfitom chorocter ic^H; UPPERCASE. lov-«*to^B. numeroli.
p(jncli;aTion. etc Simple TO ianiy styles Upper Ond lowfif «at# 4lOred
i«paiaiely; toad upper atOne ro save ipoce .. ioad bCLti< for a full
jftt. Moy be u^ed witl. UCKERTAPE.
All progrom^ an high quolily
digital casielTe top«
VIC-PICS .... digitized pictures! $18.95
Nineteen fascinating high-resolution pictures to disploy
on your VIC screen. Creoted by digitizing video camera
irjiages. Includes portraits, models, scenery, and much
more. Over 16K points analyzed in each picture. Three
styles: h»-contrast, dithered, ond colorized. Compalible
with both cofor and B/W sets.
GRAFIX DESIGNER ($14.95). rwoprogmm ^er help^ you de^.gn
CUStQ'm grpphicvchpra tiers GEN /EDIT di^pCayi on enlarged BiB square move the
cursor around in il and lurn dofi on or oH lo foim a chofatTci iHoldk lOO* ErO^e
edit or recall of londom Idod OATAMAKEft when trn-vhcd dcs-QOmq ChiOraCeri
ouiotnaricoHy become rumbe-ied doio iiciemenri. So^e (hem on rope [uvr Lte o
prog'Om, InnruCtiorn included lor appending to ony new or old program
Build Nbroriei of grophic*
oy Ihe groph paper'
RS-232 INTERFACE fS49.95). Get more out of your VIC Plugm inter
face comfnuniCQlci. wifh moit itondord ierJol prfnters pnd modems Sirimply plug
into Vici Port, nee:d& no exiemol power Bi-directionol opcolion 90 day won amy
Full imisfruttioni for uie. Includes M.'l hondihoke 'Vedge,"
■RS 233 pri-ite
requ
:'ta
See OLni. obovf
miDUUEST miCRQ f'IssQCiates PO Box S148 CC nno,641lO
Include SI. 25 for postage and hondling. _
M^s^puri rgjidcnts. odd 4.6% sf*'"' ^■"•' ^r
116
COMPUTEI
July, «82, Issue 26
QnadraPET(OOMPUn\. June] 981. #13) ij a machine
language jn'ogram thai, lets you "fHirliliov" the tiiettioty of
a 32K PET with Upgrade BASIC into four, 8K areas. A
BASIC program can reside in each partition. Each
jnogram ran he run independently. It's like Jiavingfour
computers in one.
Super QuadraPET converts QiiadraPET to run on
4.0 machines (4032 and 8032) with 32K. Also included
is n Imndy utility program that makes QiiadraPET easy to
use. It can even relocate itself into one of the partitions —
ready to go, but out of the way.
To use QitadraPET 4.0, type in and .save Program
I . It places the machine language program in upper
memoiy. Program I must he RUN heiore you load and
RUN Program 2.
Super
QuadraPET
Dovid Sale
Acton, Ontario
Several ai lit les have appeared in COMPUTE! dealing
with memory partition for the PET computer. 1
coidd see the vakie of this procedure for program
dcvclopmcm. especiall) since "Dungeon" could be
neatly lucked away in one of the partitions to keep
my son happv wheii I took a break.
L'nlbrtimatelv. the \"erv useful program by
Charles Brannon (COMPUTE!, June 1981, #13^ p.
102) uas vvriltcn ior L'pgrade RC^Ms and will not
operate on 4.0 niaciiines. In revising his prograin,
1 made several changes:
1) The program has been relocated to the top
of memory to leave the cassette buffer available
for machine language program development.
2) ("alls to bask; routines are revised for use
with 4.0 ROMs.
3) Memory partitions have been changed to
make areas more nearly equal in size rather
than having the first partidon (the most easily
accessible) be the smallest.
To create the partitions, load Program 1 and
type RUN. Four 8K partitions will be created. By
choosing PET #1, you can then load the utility
program (Program 2) thai will simplify many tasks
involved in program development and in "Quadra-
PEFting." I use the utilitv program to relocate
itself into partition four where it is available when
needed to perform the following tasks:
1) Converting decimal numbers to hex and
vice versa.
2) Moving programs to and from the first
partition.
This is necessary to avoid having to use machine
language SAVEs or awkward loading procedtues.
3) Printing a directory to show which areas
are a\'ailable for use to avoid accidentally
destroying a program.
Moving Around In The Partitions
In relocating programs, the program to be moved
is duplicated in the dcsiicd partition with all
pointers reset to enable it to operate correctly. It is
not erased from the original area. This makes it
possible to re\ise a program in one area and then
compare the results with the original in another.
If you are working in the partition that contains
the utility program you can move to another area
easily using its routine #6. If you are in another
area, you can move using SYS 32513. Once you
have moved to a new area, the program contained
in it will operate normally. To erase the program
or enter a new one, simplv t)'pe NEW.
One word of caution: the relocation routines
will move only BASIC programs. Programs con-
taining machine language must be left in partition
one or relocated using "Supermon" (COMPUTE!,
Dec. 1981, #19, p. 134). If you want to pack "Super-
mon" into the top of partition four follow this pro-
cedme:
1) Load and run QuadraPET.
2) Choose PET # 1 .
3) POKE ,53.127 to temporarilv remove the
partition.
4) Type NEW.
5) Load and rtin "Su|>ei"mon."
6) POKE 53,35 to restore the partition.
7) POKE 32(327, 1 2 1 to protect "Supermon."
If you have saved "Supermon" at the top of
memory rather than at 0(500 you will need to i'oUow
a slightly different procedure:
1) Load "Supermon.""
2) Relocate it to 7933 Iiex using its transfer
fimction.
3) [,oad QuadraPE r and run it choosing
PEr#l.
4) POKE 32()27, 1 2 1 to protect "Supermon."
"Supermon" is now safely tucked away at the top of
memorv imder the QuaclraPET program ready for
use widiS\'S3]()27.
No doubt you will discover more uses for
these progiams once you begin to explore their
possibilities.
THE
BUSkHESS
mfinfiCER...
FULLY INTERACTIVE ACCOUNTING
SYSTEM. NO DISKETTE CHANGING!
FINALLY ALL THE FEATURES YOU'VE
BEEN WAITING FOR - IN ONE
COMPLETE INTERACTIVE SYSTEM,
FULL SOFTWARE SYSTEM
ONLY $995.°°
©UESTAR
▼yiNc
MANUAL ONLY - $4D.0D
REFUNDABLE UPON
SYSTEM PURCHASE.
HARDWARE REQUIREMENTS:
Commodore Model 8032 or SuperPET or
8096 Micro-compuler
Commodore Model 8050 One Megabyte Dual Disk Drive
Commodore Model 4022 (or Larger) Printer
Commodore PET — IEEE cable
Commodore IEEE — IEEE cable
DkSHiSHAHE
WORKS WITH ALL COMBINATIONS
PET/CBM 1 00% HARDWARE. NO
SOFTWARE REQUIRED! UP TO 8
USERS SHARE DISK AND/OR PRINTER,
CONNECTS IN MINUTES - NO TOOLS
REQUIRED. INCREASES PRODUCTI-
VITY-REDUCES COSTS. IDEAL FOR
EDUCATION AND BUSINESS. CABLE
LENGTHS UP TO 50 FEET.
ONLY S749°°
/////////////////iiiiiiiiiiiiiiiiiiminmuuiwmwuwwwwww
///////i///////iiiiiiiiiiiiiiiniiiiiniini\m\u\\\u\u\\\\\\\\\\\
cu.a.j
a USER SYSTEM ONLY S1 149
DEALER
INQUIRIES
WELCOME.
©UESTAR
_ INTERNATIONAL
▼\ INC
User
System
118
COMPUTEI
July. 1982. Issue 26
References:
Brannon, Charles. "QuadraPET: Multitasking On Your
F'ET?," COMPUTE!, June 1981. #13, p. 102.
Buuerfield, Jim, et al, "Supermon: A Primary Todl For
Machine Language Programming," COMPUTE!,
Dec. 1981, #19, p. 134.
Program 1.
QUADRA PET HIGH MEMORY
VERSION 4.0
COMPUTEIJUNE 81
REVISED BY DAVID SALE
NOV. 17 1981
POKE 53,127
32513 TO 32645
10 REM
20 REM
3 0 REM
40 REM
50 REM
60 REM
7 0 REM
80 POKE 52,255;
100 FOR
110 READ A
120 POKE I, A
130 NEXT
140 SYS 32586
150 PRINT" {CLEAR} {05 RIGHT}QUADRA PET DIVID
ES THE AVAILABLE"
160 PRINT" {DOWN}MEMORY INTO FOUR 8K AREAS T
HAT CAN EACH"
170 PRINT" {D0WN}ST0RE A SEPARATE PROGRAM."
180 PRINT" {02 DOWN} {05 RIGHTlYOU ARE NOW IN
PET"PEEK(32611)+1''. TO MOVE TO"
190 PRINT" {DOWN}ANOTHER AREA TYPE {REV}SYS ~
32513{OFF}."
200 PRINT" {02 DOWN} {05 RIGHT} PROGRAMS MAY B
E LOADED OR SAVED IN"
210 PRINT"{DOWN}THE FIRST AREA IN THE NORMA
L MANNER."
220 PRINT" {02 DOWN} {05 RIGHT} PROG RAMS IN OT
HER AREAS MUST EITHER"
230 PRINT"BE SAVED BY MACHINE LANGUAGE OR M
OVED"
240 PRINT" {DOWN}TO PET #1 USING THE UTILITY
PROGRAM."
250 END
995 REM CLEAR END OF STRING
1000 DATA 169,0,141,133,127
1005 REM STORE PRESENT POINTERS
1010 DATA 174,99,127,165,42,157,104,127,165,
43,157,108,127
1015 REM SELECT NEW AREA
1020 DATA 169,116,160,127,32,29,187,32,228,2
55,41,15,24 0,249,201,5,176,245
1030 DATA 170,202,142,99,127
1035 REM SET ALL POINTERS & CLR
1040 DATA 169,1,133,40,189,100,127,133,41,18
9,104,127,133,42,189,108,127,133
1050 DATA 43,169,0,133,52,189,112,127,133,53
,32,238,181,96
1055 REM INITIALIZE EACH AREA FIRST
1060 DATA 162,0,169,0,24,157,0,4,157,0,35,15
7,0,66,157,0,97
1070 DATA 232,224,3,144,238,76,1,127
1075 REM POINTER DATA
1080 DATA 0,4,35,66,97,3,3,3,3,4,35,66,97,35
,66,97,127
1085 REM WHICH PET QUESTION
1090 DATA 147,87,72,73,67,72,32,80,69,84,63,
32,40,49,45,52,41,0
Program 2.
100 PRINT" {CLEAR}PET UTILITY PROGRAMS"
110 PRINT" ############# #######"
120 REM VERSION JANUARY 10, 1982
130 REM DAVID SALE
140 REM ACTON ONTARIO
150 REM FOR USE WITH QUADRA PET
160 REM VERSION 4.0 HIGH MEMORY
170 PRINT" {DOWN} {REV} IfOFF} DECIMAL TO HEX"
180 PRINT" {DOWN} {REV}2{0FF} HEX TO DECIMAL"
190 PRINT" {DOWN} {REV} 3{0FF} RELOCATE TO PET
#1"
200 PRINT" {DOWN} {REV}4{0FF} RELOCATE FROM P
ET #1"
210 PRINT" {DOWN} {REV} 5{0FF} PRINT DIRECTORY
220 PRINT" {DOWN} {REV}6{0FF| MOVE TO ANOTHER
PET"
230 PRINT"{02 DOWN}TYPE IN THE NUMBER OF YO
UR CHOICE"
240 GET A: IF A<1 OR A>6 THEN 240
250 ON A GOTO 260,440,590,1040,1490,1670
260 PRINT" {CLEAR}DECIMAL HEX CONVERSION TY
PE {REV}M{OFF} FOR MENU"
270 PRINT" ######## it ########### ############
# # # # jl # "
280 PRINT" [DOWN}TYPE IN DECIMAL NUMBER (MAX
65535) {DOWN} "
290 INPUT AS:IF AS="M"THEN 100
300 A=VAL(AS>
310 IFA>=16*4THENPRINT"ILLEGAL QUANTITY" :G0
TO280
3 20 IFA> = 16''3THENB(1)=INT(A/(16"3)) :A=A-B(1
) * (16*3) :GOTO340
330 B(1)=0
3 40 IFA>255THENB(2)=INT(A/256) : A=A-B ( 2) *256
IGOTO360
350 B(2)=0
360 IFA>15THENB(3)=INT(A/16) :A=A-B{3) *16:G0
TO380
370 B(3)=0
380 B(4)=A
390 C$ = "0123456789ABCDEF''
400 PRINTTAB(8) "{UP}= {REV}";
410 F0RX=1T04:B=B(X)+1:B$ (X)=MID$ (CS,B,1)
420 PRINTB$ (X) ; :NEXT
430 PRINT" {OFF} HEX" :GOTO290
440 PRINT" {CLEAR} HEX TO DECIMAL TYPE {REV}
M{OFF} FOR MENU"
450 PRINT"*»##»#######tt########tt#####tt###"
460 PRINT" {DOWN }TYPE IN HEX NUMBER (MAX FFF
F) {DOWN} "
470 DC=0:INPUT HX$:IF HX$="M"THEN 100
480 IF LEN(HX$)>4 THEN 530
490 IF LEN(HX$)<4 THEN TM$="000"+HX$ : HX$=RI
GHTS(TM$,4)
500 FOR 1=1 TO 4:IN=ASC(MID$(HX$,I,1) )
510 IF IN>47 AND IN<53 THEN IN=IN-48 :G0T0 5
40
520 IF IN>64 AND IN<71 THEN IN=IN-55 :G0T0 5
40
530 PRINT"ILLEGAL QUANTITY" :GOTO 460
540 DC=DC+IN* (16* (4-1) )
550 NEXT
560 TM$ = "__^ " + STR$ (DC) :DC$ = RIGHT$ {TMS,5)
570 PRINT" {UP} "TAB(8) "= {REV} "DC5TAB ( 16) " { 0
OFF}DECIMAL"
HAI^py CICTHDAy
Aid for Search and Retrieval off Text
One year later... ASERT is now indispensable to many businesses across the U.S. and in
Europe. From Employment Agencies and Travel Services to Schools and Libraries ASERT is
helping to make the filing cabinet obsolete! Flexible in format and simple to use, ASERT
can more than pay for itself in a short period of time.
The NEW COMPILED ASERT features:
11,000 CHARACTER "VIRTUAL" RECORD LENGTH
21 "FIELDS" AND 180 "SEARCHWORDS", ALL USER-DEFINABLE
"FREE-TEXT" FIELD FOR EXTRA COMMENTS
ABILITY TO RESTRUCTURE FILES AT ANY TIME
SEARCH ON ANY COMBINATION OF FIELDS AND SEARCHWORDS
"MUST HAVE", "MUST NOT HAVE", "OPTIONAL", "OR" OPERATORS
WORKS WITH POPULAR WORD PROCESSING PROGRAMS & PRINTERS
PRODUCE FORM LETTERS, REPORTS, AND MAILING LABELS
USER FRIENDLY - MENU DRIVEN - OPERATOR ORIENTED
AND MANY OTHER NEW FEATURES
C. F. I. HOTLINE AVAILABLE TO USERS
OTHER CFI SOFTWARE
Federal Income Tax Preparation System'
Personal Tax Calculator'
Emergency Control Program*
VIC Animation Tutorial
%im^
AVAIIABLE FROM YOUR
^C c om m o d or e
DEALER
CFI . . . computer solutions
201 West 92nd Street • New York, NY. 10025 • f212) 724-1711
120
COMPUTE!
July, 1982. Issue 26
580 GOTO 470
590 PRINT" {CLEAR}RELOCATION PROGRAM TO PET '
#1"
600 PRIMT" #»###»###««»#»»#######»###»#"
610 IF PEEK(1026)=0 THEN 670
620 PRINT" [DOWN] PET #1 CONTAINS A PROGRAM"
630 PRINT"DO YOU WANT TO DESTROY IT ?"
640 GET RS:IF R5="" THEN 640
650 IF RSO'Y" THEN 100
660 PRINT TAB(30) "{UP} {REVlYES{OFF} "
670 PRINT" {DOWNlWHICH PET HAS PROGRAM TO BE
MOVED ?"
680 GET N$:IF N$="" THEN 680
690 NO=VAL(N$) :IF N0<2 OR N0>4 THEN 680
700 PRINT TAB(37) "{UP} {REV}"N0
710 PRINT" {DOWN}ARE YOU SURE 7"
720 GET R$:IF R$ = "'' THEN 720
730 IF R$<>"Y"THEN 100
740 PRINT TAB(17) "{UP} {REV}YES{OFF} "
750 PRINT" {DOWN}TRANSFERING CONTENTS OF PET
#"N0
760 PRINT"INTO PET #1"
770 REM SAVE POINTERS IF IN PET NO
780 IF PEEK(32611)<>N0-1 THEN 810
790 POKE 32616+NO, (PEEK{42))
800 POKE 32620+NO, (PEEK(43))
810 REM CORRECT POINTERS IN PET #1
820 N0=N0-1:V1=PEEK (32616+NO)
830 POKE 32616, VI: REM VAR . LOW
840 V2=PEEK(32620+NO)-31*(NO)
850 POKE 32620, V2: REM VAR. HIGH
860 MH=PEEK(32624+NO) -31*(N0)
870 POKE 32624, MH: REM MEMORY LIMIT
880 SU=NO*7936: REM SUBTR. FACTOR
890 SA=SU+1025: REM START ADDRESS
900 REM CORRECT POINTER TO NEXT ADDRESS
910 PA=PEEK (SA) +256*PEEK{SA+1)
920 BY=PEEK(SA) :POKE(SA-SU) ,By
9 30 SA=SA+1:BY=PEEK{SA) :POKE(SA-SU) , (BY-SU/
256)
940 REM TRANSFER REST OF LINE
950 SA=SA+1:F0R A=SA TO (PA-1)
960 BY=PEEK(A) :POKE(A-SU) ,BY
970 NEXT
980 REM CHECK FOR END OF BASIC
990 IF PEEK(PA+1)<>0 THEN SA=PA:GOTO 910
1000 POKE PA-SU,0:POKE PA+1-SU,0
1010 PRINT" {DOWN}PROGRAM TRANSFERRED"
1020 FOR A=l TO 3000: NEXT
1030 GOTO 100
1040 PRINT" {CLEAR}RELOCATE FROM PET #1"
1050 PRINT"#### ###§#######»####"
1060 PRINT" {DOWN)TO WHICH PET ? (2-4)"
1070 GET N$:IF N$="" THEN 1070
1080 NO=VAL(N$) :IF N0<2 OR N0>4 THEN 1070
1090 PRINT TAB(22) "{UP} {REV}"NO
1100 PRINT" {DOWN}ARE YOU SURE ?"
1110 GET R$:IF R$="" THEN 1110
1120 IF R$<>"Y" THEN 100
1130 PRINT TAB(16)"{UP3 {REV}YES{OFF}"
1140 IF PEEK(1026+(NO-1)*7936)=0 THEN 1200
1150 PRINT" {D0WN}PET"NO"CONTAINS A PROGRAM"
1160 PRINT"DO YOU WANT TO DESTROY IT ?"
1170 GET R$:IF R$=""THEN 1170
1180 IF R$<>"Y"THEN 100
1190 PRINT TAB(30) "{UP} {REV}YES{OFF}"
1200 PRINT" {DOWN}TRANSFERING PROGRAM TO PET
#"N0
1210 PRINT"FROM PET #1"
1220 REM SAVE POINTERS IP IN PET 1
1230 IF PEEK (32611)00 THEN 1260
1240 POKE 32616, {PEEK (42) )
1250 POKE 32620, (PEEK (43) )
1260 REM CORRECT POINTERS IN PET NO
1270 NO=NO-l:Vl=PEEK{32616)
1280 POKE 32616+NO, VI: REM VAR. LOW
1290 V2=PEEK(32620)+31*(NO)
1300 POKE 32620+NO, V2: REM VAR. HIGH
1310 MH=PEEK(32624)+31* (NO)
1320 POKE 32624+NO,MH: REM MEM. LIMIT
1330 AD=NO*7936: REM ADD. FACTOR
1340 SA=1025: REM START ADDRESS
1350 REM CORRECT POINTER TO NEXT ADDRESS
1360 PA=PEEK (SA)+256*PEEK(SA+1)
1370 BY=PEEK(SA) :POKE(SA+AD) ,BY
1380 SA=SA+1 :BY=PEEK (SA) :POKE(SA+AD) , (BY+AD/
256)
1390 REM TRANSFER REST OF LINE
1400 SA=SA+1:F0R A=SA TO (PA-1)
1410 BY=PEEK{A) :POKE{A+AD) ,BY
1420 NEXT
1430 REM CHECK FOR END OF BASIC
1440 IF PEEK(PA+1)<>0 THEN SA=PA:GOTO 1360
1450 POKE PA+AD,0:POKE PA+1+AD,0
1460 PRINT" {DOWN} PROGRAM TRANSFERRED"
1470 FORA=1TO3000:NEXT
1480 GOTO 100
1490 PRINT" {CLEAR}DIRECTORY FOR PROGRAMS IN "
PARTITIONS"
1500 PRINT" ########»#########»#»# ####§#####»
111"
1510 FOR A=l TO 4
1520 PRINT:PRINT"{DOWN}PET #"A
1530 PRINT" ####it##"
1540 READ B
1550 IF PEEK(B)=0 THEN PRINT "EMPTY"; :GOTO 1
610
1560 PRINT "CONTAINS PROGRAM";
1610 NEXT
1620 DATA 1025,8961,16897,24833
1630 RESTORE
1640 PR1NT:PR1NT"{02 DOWN}PRESS {REV}M{0FF} ~
TO RETURN TO MENU"
1650 GET R$:IF RS=""THEN 1650
1660 GOTO 100
1670 SYS 32513
1680 PRINT" {CLEAR} "TAB(3) "{02 D0WN}Y0U ARE N
OW IN PET *" PEEK (32611)+1 "{LEFT}
n
1690 PRINTTAB(3) "{02 DOWN}ANY PROGRAM IN THI
S PARTITION IS"
1700 PRINT" {DOWN}UNDISTURBED AND MAY BE RUN "
OR MODIFIED."
1710 PRINTTAB{3) "{02 DOWNJTO ENTER A NEW PRO
GRAM FIRST TYPE { REV}NEW{ OFF} "
1720 PRINT"THEN PROCEED IN THE NORMAL FASHIO
N."
1730 PRINTTAB(3) "{02 DOWN}TO MOVE TO ANOTHER
PARTITION TYPE"
1740 PRINT"{DOWN} {REV}SYS 32513{OFF}. THE PR
OGRAM IN THIS AREA"
1750 PRINT" {DOWN}WILL BE PROTECTED UNTIL NEE
DED LATER."
COMPUTE! The Resource,
July, 1982, Issue 26
COMPUTEl
121
A disaster-prevention technique for Apple Disk systems.
Teachers should find this especially valuable. For DOS
3.3 with 48K RAM.
Apple DOS
Changer
Robert Swirsky
Cedarhurst, NY
If there !s an Apple in a classroom, there is usuall)
a student who gets immense pleasure out of typing
"I NIT" and watching the drive whir and click as it
erases the disk!
There is a strange phenomenon which occurs
when you mix microcomputers and young people.
Most of them will treat the computer with reason-
able care, but there is always someone who feels
compelled to try to "mess up" the computer's files.
I know from experience; I used to be such a
student. What can be done to stop people from
tampering with dangerous DOS commands? The
answer is simple - just change the names of coin-
mands that you don't want available to users. Since
the DOS is stored in RAM, it is relatively easy
to find the table of commands, and modify it
accordingly.
This program will change the DOS commands.
When run, it displays each command followed by a
prompt. If you want to change the command, just
type in your revision. To leave it unmodified, hit
the RETURN key. The next DOS command will be
displayed, and the same procedure is followed.
A few words of caution are needed. First of all,
don't make the new commands so that they match
the beginnings of other commands. For example,
if you change "CATALOG" to "C", conflicts will
arise if you try to use the CLR, CLOSE, or other
commands that begin with C, Second, don't put
spaces in your command. This tends to make
strange things happen. Also, avoid making your
commands excessively long. There is only so much
room in memory for the command table. Note,
however, that the commands can be of different
lengths from the original ones.
HowToHAHAADisk
The program will work on DOS 3.3 with 48 K of
RAM. It will not work with less than 48K, without
changing the addresses that the changes are POKEd
to. Since the vast majority of Apple owners have
the 48K, this is hardly a limitation.
After the program is RUN, the changes can be
saved as a permanent part of DOS. Insert a blank
disk, and type the INIT command, followed by the
correct parameters. Of course, if you have changed
the INIT itself lo something else, you would type
that in instead. When the initialization is completed,
the disk will have your DOS modifications stored
on it. Whenever DOS is booted from that disk,
your custom commands will be the ones that the
Apple knows.
A great deal of protection is offered with this
program. If you decide to change INIT to HAH A,
nobody can init the disk. Anyone who tries will be
greeted with a PSYNTAX ERROR (beep). However,
when you go to HAHA your disk, you will be
successful.
0 ONERR GOTO 1000
1 DIM C0$ (28)
2 P = 1
10 FOR X = 43140 TO 43271
20 C0$(P) = C0$(P) + CHRS ( PEEK (X) )
31 IF PEEK {X) > 128 THEN P = P + 1
32 IF P = 28 THEN 70
40 NEXT
7 0 HOME
80 PRINT "DOS CHANGER BY ROBERT A. SWIRSKY
160
170
180
190
200
210
220
221
230
235
240
250
260
261
270
280
290
295
300
501
510
520
530
599
600
1000
; PRINT "HIT 'C TO
IF R$ < > "C" THEN
CONTINUE";
160
"YOU WILL SEE ALL 28 DOS
SIMPLY RE
VTAB 24;
GET R$:
HOME
PRINT : PRINT
COMMANDS"
PRINT "IF YOU WISH TO LEAVE IT UNCHANGE
D, PRESS RETURN"
PRINT "TO CHANGE THE COMMAND,
TYPE IT WITH VOUR CHOICE."
PRINT : PRINT
LL = 43139
HL = 43271
FOR Q = 1 TO 28
PRINT C0$ (Q) ;
TAB( 20);" — > ";
R$
= "" THEt^ R$ = C0$(Q)
= 1 THEN PRINT "PLEASE —
LETTERS": GOTO 240
LEN (R$) -1
ASC ( MID$ (R$,W,1))
PRINT
INPUT
IF R$ =
IF LEN (R$)
TWO OR MORE
FOR W = 1 TO
POKE LL + W,
NEXT
IFASC(RIGHTS{RS,1) ) >127THENPOKELL+W,ASC
(RIGHT$(R$,1) ) :GOT0 501
POKE LL + W,ASC(RIGHT${R$,1) )+128
REM
LL=LL+W
IF LL > HL THEN 600
W=0
NEXT
PRINT "CHARACTER LIMIT EXCEEDED"
PRINT "RUN TERMINATED" C
122
COMPUTEI
July. 1982. Issue 26
A Monthly Column
This month, columnist Michael Day tackles some of the practical aspects of adding a modem to
your computer. A modem will let your computer talk to other rnmjniters over the
telephone lines. JJ you're shopping for a modem, you'll need to ansiuer some questions first.
Will you want the computer to be able to "pick up the phone" by itself and answer
incoming colls automatically? To place its own calls automatically? How can you use a modem
with a "Princess" phone? Will you need an extra interface to connect the modem to
your computer or untl it just plug in?
Telecommunications:
Choosing A Modem
Michael E. Day
Chief Engineer, Edge Technology
There are a numlier of (lifferenl types of modems
oil the market. In order to luulerstand eacii
modem's capability in eac!i application, we need to
break them down into different groups.
One aspect to consider is the way the modem
attaches to the phone line. There are three basic
methods:
1 . Acoustic coupler: a modem thai communi-
cates througii a telephone by sotuid.
2. Inductive coupler: a modem that com-
nnniicatcs (in-out>h a telephone by elec-
tromagnetic induction.
3. Direct connect: a device which allows a
modem to connect directly to the phone line
instead of using tlie telephone to communicate
through.
The acoustic coupler and direct connect are
the most commonly used methods. The inductive
coupler is actually a modification of the acou.stic .
coupler, and generally still requires that the trans-
mitter portion of the modem be acoustically
coupled. The usually slated advantage of the in-
ductive coupler is its avoidance of the distortion
and interference caused by the extra iran.slation (o
sound and back (xcuring in the acoustic coupler.
This is of litlle help, however, since the majority
of problems with acoustic coupling involve the
transmitter portion, which needs to be acoustically
coupled anyway. Ttie inductive coupler also has its
own set of pnjblems \vhich can often make il more
difficult to work with if care has not been exercised
in its design.
Each telephone has its own quirks \vith regaixl
to inductive coupling, and this can sometimes
make it difficult lo get a modem to work properly.
Also, because of the sensitivity involved in properly
picking up the weak electromagnetic signals, the
inductive cotipler is more sensitive to stray magnetic
fields, fields generated by a computer or terminal
can interfere with the operation of the modem.
Portability Of The Acoustic Coupler
The acoustic coupler modem has been around for
some time. The advantage of the acoustic coupler
is its portability. It can be used with any telephone
that has a standard handset (referred to as a 500
style phone). This means that you are not limited as
to the electrical connections to the phone line, only
to the physical construction of the phone handset,
which must 111 into the rubber or plastic "cups" of
the acousdc coupler.
This can be a problem if you have a princess
or flip phone or sonic other style which does not
use the standard 5(){) .series handsel. Other prob-
lems with the acoustic coupler are a result of the
acoustic coupling itself. Because of the signal's
conversion from electrical to iicoustic and back to
July. 1982, Issue 26
COMPUTEI
123
electrical again, some amount of distortion is gen-
erated. This can be held to a minimum with proper
modem design, but cannot be eliminated entirely.
Tlie telephone it.sclf'is a major conlribiitcjr to this
problem. A great portion of the distortion can be
cured simply Iiy replacing the carbon microphone
in die telephone handset with a condensor
(capacitor) microphone.
The standard acoustic coupler used to com-
municate over the telephone is referred to as a 103
compatible modem. This is a full duplex type
modem - that is, it can send and receive data at the
.same time. Because of the method used to encode
and decode the data to be transmitted by this type
of modem, the maximimi communication speed
that can be used reliably is 3()0bps (30 characters
per second).
This limitation is the result of many things,
including the Iwndwidth of the phone line, the
encoding scheme, and the signal distortion caused
by the acoustic coupling. Although it is possible to
push the speed a bit higher, reliabiliiv will suffer. A
very good modem might let you push it to 400 or
450 bps, but, because of acoustic distortion, this is
about the maxinuim.
Another problem with the acoustic coupler is
its limited .sensitivity. Most are not able to operate
at a receive level of less than -30db to -36db. This is
equivalent to a whisper. About 90*^ of the phone
calls placed will provide a communications link
allowing a signal through stronger than this. There-
fore, this is not a great problem. However, the
strength of the transmitted signal is of major im-
portance, since the weaker the iransmillcd signal
is, the weaker the received signal at the other end
is going to be. Generally, it is desirable to have a
transmitted signal strengtli of between -6db and -
lOdb, This is equivalent to loud talking.
Direct Connect Method
The other method of attaching a modem to the
phtjne line is the direct connect method. Here vou
attach the modem directly to the ptione line, rather
than acoustically through a telcijhone haiid.set.
This eliminates the problem of distortion by not
going through the translation to sound and back.
There are many types of direct connect mo-
dems. The type that most computer users need is
tlie 1 03 compatible ty]3e. It uses the .same conversion
scheme to cfimmunicate as the 1 03 compatible
acoustic coupler, although the translation to sound
and back is, of course, not necessary.
The main advantages of the direct connect
modem are reduced signal distortion and improved
sensitivity, (since the sound translation is elimi-
nated). Some direct connect modems are able to
commtmicate at up to 600bps (60 ctiaracters per
second). However, some reduction in rehability
should be expected at these high speeds. Other
modems are designed so that they cannot o|3erale
at speeds above 300bps — in order to achieve a
fiigher degree of reliability at the normal speeds.
Another attractive aspect of the direct connect
modem is that it allows the computer to access the
phone line directly to answer, and even make, calls
h\ itself. This cannot easily be done with the acoustic
coupler becau.se it gcjes through a phone which
must be physicall)' lifted off a receiver to start
dialing. The disadvantage of a direct connect
modem, however, is that it must be physically
attached to the phone line. This can be a problem
with a business phone setup, pay phone, etc. As a
result, the direct connect method is usuallv used in
a fixed location where the phone line is easily at-
tached. Often a phone line is solely for the use of a
computer.
Three Types Of Direct Connect Modems
The three main types of direct connect modems
are the "auto answer," "auto answer/manual origi-
nate," and "auto answer/auto originate."
An auto answer modem can answer calls, but
is unable to place any. An auto answer/manual
originate modem can answer calls as well as allowing
you to manually make a call (after which control is
transferred lo the modem). Finally, an auto answer/
auto originate modem lets the computer answer
calls automatically as well as place them bv itself
without operator intervention.
While most acoustic couplers are separate
devices that attach to a computer or terminal
through some sort of interface (usually an RS232
serial interface), a few are built into the equipment.
If the acoustic coupler is to be purchased as a sepa-
rate device, be sure to find out if the separate
interface will lie needed and include it in the cost
of the modem. Often a computer already has an
RS232 port available to which to attacli the modem.
If this is the case, the additional interface mav not
be needed.
Direct connect modems come as either a sepa-
rate unit that attaches to the computer, or as a
device that can be mounted inside the computer. If
it is a separate external unit, the interface must be
taken into account, (generally, modems which are
designed lo l)e installed inside the computer provide
their own interface to the computer, and the extra
cost need not l>e considered.
Although the final decision must be made
according to your own needs, a general rule of
thumb is that if you have no need for automatic
operations, an acoustic coupler will probablv serve
best. If, however, you do desire automatic functions,
then you will need the direct connect type modem.©
124
COMPUTE!
July, 1982. bsue 26
In this, the first of a two-part series on the inner workings
of Atari Graphics, the author reviews the computer's
sy'stem of screen management and defines several impor-
tant tenm including color clock, playfield, mode line,
and display list. Next month, the article concludes with
techniques for itsing color indirection, a powerful
graphics tool, and explores the new GTIA chip in detail.
This new chip costs nothing if your Atari is still under
warranty. If you have an older machine, the nearest
authorized service center should be stocking it by now and
will install it for about $60.
Parti:
Atari Video
Graphics And
The New GTIA
Craig Chamberlain
Birminglnam, Ml
The GTIA is an exciting new graphics chip now
being shipped in Atari 400/800 computers. Among
its special features are a sixteen color mode with a
resolution eight times better than the Apple's, and
the capability of generating 256 color variations.
The GTIA chip provides three new graphics modes
in addition to the normal fourteen, totally different,
full-screen modes. This article defines a few terms
relating to graphics, explains the normal graphics
modes, then introduces the new modes provided
by the GTIA.
ANTIC Is A Busy Chip
We all know that the Atari 400 and 800 have
superior graphics capabilities. This has been
achieved by designing special chips to handle video
display tasks, taking that burden off the main
microprocessor. In Atari computers these special
chips are known as ANTIC and CTIA.
The ANTIC chip is actually an advanced
DMA (direct memory access) controller that qual-
ifies as a true microprocessor. It has an instruction
set (mode lines and "load memory scan" operation),
a program (the good 'ole display list), and data
(display memory and character sets).
This special chip is a rather busy fellow. Its
responsibilities include doing DMA for the display
list, the display data (playfields), the character set,
and player/missile buffers. Besides that, it sets the
playfield width, controls horizontal and vertical
fine scrolling, keeps track of the vertical position of
the scan beam, and handles NMI interrupts. It also
supports a light pen.
The GTIA: Three New Modes
The other chip is the CTIA, or Computer Televi-
sion Interface Adapted integrated circuit. This is
the chip which handles all color and luminance
(brightness) information to send to the television
screen. This is a complicated process, but the chip
designers at Atari got carried away and created
whole new functions which we know as the player/
missile graphics system. It is the CTIA which pro-
cesses the horizontal position, size, priority, and
color of the players. The CTIA also watches for
player/playfield collisions, joystick triggers, and
console keys. Like the ANTIC, it is a busy chip.
The new GTIA chip replaces the CTIA. Rumor
has it that the "G" stands for George. Apparently
some fellow named George was still not satisfied
with all the special functions of the CTIA, and
gave It the ability to generate three totally new
graphics modes. When you find oiU what these
new modes can do, I think you will appreciate
"George" and his GTIA.
The three new modes are 9, 10 and 1 1 . The
operating system and, therefore, Atari BASIC,
supports these new modes. But before describing
all the features of these new modes, I want to define
a few essential terms and review the normal
graphics modes 0 through 8.
In order to fully understand Atari graphics,
one must have a solid concept of how a television
display is generated. And no discussion on "televis-
ion theory" would be complete without a definition
of the "color clock." The term color clock derives
from the fact that there is a problem in measuring
distances on a television screen. Different television
sets have different screen sizes, with 9", 13" and
19" being common diagonal measurements. All
television sets, however, have a scanning beam
which translates a signal from the computer into a
picture on the screen.
The signal coming from the computer contains
two characteristics. It has a frequency, which defines
a color, and it has an amplitude, which defines the
luminance of that color, often referred to as the
brightness or intensity. These qualities of the com-
puter signal affect the way in which the scanning
beam shoots electrons at the phosphors on a televi-
sion screen. This electron shooting process is done
horizontally, one line at a time, but it is done so
quickly that it is not noticeable to the human eye.
When drawing a line, the scanning beam starts
at the left edge of the screen and proceeds to the '
right edge, shooting electrons the whole time.
Since the beam has a finite amount of time it can
^tn^SsM
ATARI SAYS ITS FIRST WORD
WITH A VOICE BOX BY THE ALIEN GROUP!
THE ALIEN GROUP has emerged from the underground, daring to offer
a full-featured speech synthesis system that is flexible, low in cost,
and needs no -accessory devices. No Interface, Cables, Speaker, A
Amp, or External Power Required! VOICE BOX has been -^
designed and programmed by Atari users to become the
integral voiceof a 400 or 800 computer. Simply plugged into i
the serial port, VOICE BOX automatically routes all speech m
into the speaker of your television monitor With the menu- M
driven operating system supplied, you'll be creating fl
original, intelligible speech within moments after H
loading disk or cassette. No lengthy or obscure H
instructions to wade through. H
The system includes a dictionary which translates typed V
textinto VOICE BOX's phonetic language. Thedictionarycan \
be expanded to include as many as 5,000 words of your own '
custom vocabulary. Unlimited speech can be produced by
straightforward phonetic definiton at any time, even if the ■
dictionary should be full.
The speech routines can be called from other programs for any
purpose you con conceive. Here are a few suggested uses:
J
" "" '"; SOUND EFFECTS
' • Access 64 phonemesolanyof 4 pitch levelstooddfiltered,
contoured sound to the Atari audio repertoire.
GAMES
• Program aliens to hiss threats, moon when destroyed,
• Devise weird, non-human tongues for dungeon dwellers.
, '' • Insert cryptic spoken clues in maze games.
COMPUTER OPERATION
• Code verbal prompts and error messages that command
attention and leave the current disploy intact.
EDUCATION
• Gain an introduction to the principles of phonetics.
• Learn touch typing through spoi<;en feedback from the
keyboard.
In addition, the Rondom Sentence Generator included in the
operating system, which prints and speaks endlessly
I startling, amusing, even poetic combinations of words
supplied by the user, helps teoch school children to identify
parts of speech and recognize a variety of sentence
structures.
A minimum of 16KRAM is required by theoperoting system,
.,_,^^ r,^w Eitherdiskorcassetteincludesbothl6Kand32K versions. Try
VOICE BOX VOICE BOX for up to 10 days, and if it isn't the finest value
Speech Synthesizer you've ever seen in a computer peripheral, the most
challenging and provocative addition you've ever made to
your system, return it in its original condition for a full
refund.
When ordering specify disk- or cassette-based operating system, and enclose check or money-order for $1 69, or state your
VISA or AAASTERCARD number. Send mail orders to: THE ALIEN GROUP
27 West 23rd Street or telephone orders from
Dept.PT-1 10 AM to 6 PM New York time
New York, New York 10010 (212)924-5546
ALSO AVAILABLE AT LEADING COMPUTER STORES THROUGHOUT THE WORLD.
Atari is a registered trademark of Warner Communications.
126
COMPUTEI
July. 1'82, Issue 26
spend drawing one line, the beam will seemingly
have to move faster to cover more area on a larger
screen. Thus the problem of trying to measure
horizontal distances is further complicated by the
fact that different scanning beams not only travel
different amounts, but also at different rates. Our
unit of measurement cannot really be a distance; it
must be a unit of time. The hint I gave a moment
The ANTIC knows how fo
handle fourteen different
kinds of mode lines.
ago was that the scanning beam has a certain
amount of time it can spend on one scan line. How
fast or how far the beam travels is insignificant.
Understanding Color Clock
The (act that our unit of measurement is ba.scd on
time explains the word clock in the term color clock.
A color clock is the amount of lime the computer
needs in order to sufficiently change the frequency
of the signal it generates so as to produce a different
color. Wlial a mouthful! This is my own personal
definition; it has worked for me, but some people
may not agree with it. Here's another definition. A
scan line is the horizontal path of the scanning
beam from the left edge of the screen to the light
edge.
Scan lines extend horizontally across tlic
screen, but it takes a lot of them stacked vertically
to fill up the screen from top to bottom. Therefore,
horizontal resolution is usually expressed in terms
of c<jlor clocks wliile vertical resolution is expressed
in scan lines. Of course, on different television sets
the actual lengths will differ, but the resolution
horizontally to \eriically is always proportionate. It
turns out that, on any screen, one color clock ap-
pears to be equal in length to two scan lines.
Now we have to get even more technical for a
moment. The scanning beam starts at the upper
left corner of the screen and travels horizontally to
the right. Bv the time it hits the right edge it has
drawn one scan line that is 228 color clocks wide.
The team then shuts off for a short period while it
retin-ns to the left edge, only one scan line lower.
This period is called the "horizontal blank" for
obvious reasons. The beam then turns on again
and starts drawing the next scan line. This sequence
of drawing scan lines continues 262 times. At that
point, the scanning beam, at the lower right corner
of the screen, shuts off and returns to the upper
left corner of the screen during a period know n as
the (guess what!) "vertical blank."
This whole process of drawing 262 scan lines,
each of 228 color clocks, plus the blanking periods,
constitutes one "frame." The television draws sixty
(j1 these frames every second, because your home
power line is 60 Hz (cycles). The name given to this
display method is "raster scan." The fact that your
Atari follows a broadcast standard referred to as
"NTSC" makes it one of the few home computers
that can be video-taped without special ecjuipment.
Just because the scanning beam generates all
those scan lines and color clocks doesn't mean that
the computer is generating that much display data.
Even if the computer did, you wouldn't .see the
whole image since most television sets display a
little less than 200 .scan lines of about 170 color
clocks. The part where the true picture exists is
called the playfleld, and now it's time for another
definition.
Ployfields And Mode Lines
The playfield is the portion of each .scan line for
wliich data read from memory can produce colors
anrl luminances. T he background exists at the
ends of each scan line; the |:)lay field is in the middle.
From the viewpoint of one frame, the playfield
appears as a rectangular region which extends to
the sides of the screen.
Two things control the size of this playfield
area. The height in scan line is controlled In- the
display list as you will see in a moment. Recall that
tlie width in color clocks is set by the DMA control
register of the ANTIC.
SDMCTL $022F 559 shadow
DMACTL $D400 54272 hardware
D5 1 display list DMA enable
0 display list DMA disable
D1,D0 00 playfield DMA disable (no play Held)
0 1 narrow play field ( 1 2 8 color clocks)
10 standard playfield ( 1 60 color clocks)
11 wide playfield (192 color clocks)
The OS screen handler always uses a standard
width playfield. The advantage of the narrow
playfield is that less DMA is required, so programs
execute faster. Unfortunately, the screen handler
routines do not work properly when the playfield
width is other than the standard. The wide playfield
generates more data than the television can display;
its uses are rather limited. It's even possible to turn
off playfield completely, in which case ANTIC fills
the screen with scan lines of the background color.
As will be shown in a moment, the playfield also
requires a "display list" so bit five must be set for
any playfield type to be generated.
Remember that a byte is made up of eight
Orderline:
(303) 427-9036
Free Catalog
available upon request
ACR
A Point of Sale
• 350 Inventory Items
• Purchase Orders
• Report Generator
• Receiving Records
1 or 2 Drives
32K {Disk)
$169.95
Dealer Inquiries
Invited
exclusively distributed by:
HCMS
3489 W. 72nd. Avenue
Westminster, CO 80030
Another First!
X
1
STOP
SOFTWARE
STORES
'' for the ATARI 400/BOO*
PRESENTS
for the ATARI 400/800*
Use by itself or add to existing
memory for up to 96K RAM
A Simple Peek & Poke
Puts Your ATARI in a League
By Itself
manufactured by;
MaxRam Datawave Corporation
•ATARI is a registered trademark of ATARI, Inc.
Copycat
High- Performance
Disk Copier
Handles non-standard formats
• All Mactiine Languages
• Super-Fast Execution
• Supports 1 or 2 drives
$29.95
Cassette
Checkbook
Program
Balancer Program
• Multiple Accounts
• Creative Use ot Graphics
$14.95
S2.00 Shipping and Handling.
Please add S1.50 for COD.
Colorado residents, add 6.5% tax.
VISA and MC accepted
Send for our FREE
Software Catalog for the
Atari 400/800 Computer
LARGE SELECTION
SAVE A MINIMUM OF 10%
ALL PROGRAMS PRETESTED
FREESHPPING
MOST MAJOR BRANDS
^ARDOm
llliC^OWA^E
P.OBOX 1704
BREA,CA 92621
(714)671-1093
128
COMPUTEI
July. 1982, Issue 26
binary "bits." If play field and display list DMA is
enabled, bits may be read from the computer mem-
ory during the course of one scan lino. 'The bit
pattern determines the frequency and intensity
changes of the scanning beam, with the result
being different color/luminances. Ihe same bit
pattern may be repeated for several scan lines.
And the bit pattern can be interpreted in different
ways. This leads us to yet another definition.
A mode line is a contiguous group of scan
Unas for which display memory is read only once.
There are two main types of mocle lines. In
direct memory map modes, the bit pattern produces
the same image on each scan line. Text modes are
a more complicatetl mode type which use a char-
acter set.
The ANTIC knows how to handle fourteen
different kinds of mode lines. Each mode line
corresponds to a different method for interpreting
a liit pattern. A full screen graphics mode is actually
just a .series of identical mode lines.
The display list is merely a sequence of bytes
in memory that, among other things, tells ANTIC
the proper sequence of mode lines tor one screen.
Whenever the screen is opened (accomplished
in Atari BASIC with the GRAPHICS statement),
the screen handler estabhshes a display list of many
mode lines to produce a .screen of the desired
mode. Modes can be mixed by maiuially ciianging
the display list. Display li.sts produced bv the .screen
handler always contain the proper number of
mode lines for exactly 192 scan lines of play field.
Altering the display list can affect the total number
of scan lines, which is how the veitical size of the
playf'ield is controlled.
The display list also has other functions, such
as control of fine scrolling, horizontal blank
interrupts, and loading the memory scan counter
of the ANTIC ,so it knows where to start reading
memory.
A mode line divided into several parts forms
jiixels, which are single plotting points somewhere
within the playfield area. A pixel s vertical resolu-
tion is the same as the mode line in which it is dis-
played, so there can be just as many pixels vertically
as mode lines in the display list. The nimiber of
color clocks over which one pixel is spread is also
determined by the mode line. Here is a little chart
to show you the pixel size for the primary mapping
modes:
MODE COLOR SCAN RESOLUTION
CLOCKS LINES (full/split screens)
3 4 8 40 by 24/20
4,5 2 4 80 by 48/40
6,7 1 2 160 by 96/80
Note that each time the width of a pixel is
reduced, its height also decreases, so a single pixel
appears to be square in shape regardless of the
graphics mode.
Some Observations About Memoiy
Now to talk about memory. In the one-color modes,
one pixel is represented in memory by one bit. If
the bit is on, playfield zero shows. If the bit is off,
the backgroimd shows. Modes 4 and (i are the one-
color modes. For more color, modes 3, 5 and 7
allow three colors. The tradeoff is lliat a single bit
is no longer sufficient. Two bits, a pair, are required.
The total value of the two bits selects either one of
three playfields or the backgroimd:
BIT PATTERN COLOR PLAYFIELD TYPE
00
0
background
01
1
playfield zero
10
2
playfield one
11
3
playfield two
Playfield zero is the same thing as COLOR I in
Atari BASIC. Playfield one is really COLOR 2, and
so on, with COLOR 0 being the background.
Although modes 4 and 5 both have the same
resolution, or pixel size on the screen, mode 5 will
recjuire twice as much memory. In the lower resolu-
tion modes which require little memory in the first
place, the additional memory needed is rather
insignificant. You might have noticed that mode 3
had no single color counterpart. Consider that in a
48 K system it is possible to have about 1 :")() different
mode 3 screens in memory simidtaneously. The
chip designers probably decided it wasn't worth
the effort or memory savings to provide a one
color mode with such low resolution.
Therefore, the size of a pixel on the screen is
determined by two things: how many scan lines
high, and how many color clocks wide. The amount
of memory required for a mode is also determined
by two things: liow many .separate pixels to one
mode line, and how many color possibilities per
pixel. The only real connectioii between pixel size
on the screen and size in memory is that bigger
pixels fill up a screen taster, so there are fewer of
them, and less memory is needed.
N<nv, three colors means two bits must be
used. Does that mean we are always stuck with only
three colors which can't be changed? No. The
CTIA is capable of generating 128 color/luminance
variations. It can produce sixteen dit terent colors,
each in eight different degrees of luminance. But
128 possibilities means .seven bits would be required,
and, in most cases, seven bits per pixel is simply not
feasible. There is a limit to how much memory can
be devoted to a screen. The solution to this problem
is a sort of compromise, but it also presents some
powerful and flexible advantages, too. The solution
is to use color indirection. C
-rue B^^"^
OUB
AtO°
TO
dav
ppi-i:
seND
THE
OUB
Tbee
OB,
SaTALO°9-31T*
CASDUP
This program allows you
to make backup copies
of those expensive
machine language
programs you bought.
Single or multi-file
copies on any
ATARI 400/800
Cassette only $20.00
(California residents add
6% tax)
Send check or money
order to;
VERVAN Software
10072 Balsa Street
Cucamonga, Calif. 91730
AUPsriPiri
KW/ %IRSTRIK
- FOR THE ATARI 400/800 16K
• INTRODUCING THE NEW ARCADE-STYLE GAME FOR ATARI COMPUTERS '
• SUPERB FINE SCROLLING GRAPHICS AND DAZZLING ARRAY OF COLOUR-
• FIGHT YOUR WAY THROUGH CAVERNS AND TUNNELSWITH ATTACKING ,
MISSILES. FUEL AND AMMO DUMPS TO CONTEND WITH '
• 100% MACHINE CODE PROGRAM FOR ONE OR TWO PLAYERS
• MULTIPLE SKILL LEVELS.
AVAILABLE NOW DIRECT ON 1 6K CASSETTE : $39 9S PLUS S5 AIRMAIL
POSTAGE. SEND YOUR VISA MASTERCARD NUMBER TODAY!
ATARI IS A T.M. OF ATARI INC.
ENGUSH SOFTWARE COMPANY
DEPTX. 50 NEWTON STREET. PICCADILLY, MANCHESTER Ml 2EA,ENGLAND, U.K. Td: 061-236 7259 j
130
COMPUTE!
July. 1982, Issue 26
All About
PET/CBM
Character Sets
Louis F. Sander
Pittsburgh, PA
Commodore's unique assortment ol graphics char-
acters, combined with their niunerous ROM sets
and keyboard configurations, make the various
PET and CBM character sets maddeningly hard to
comprehend. Occasional inaccuracies in published
documentation have contused the situation even
more. But as of today, the mystery is over- this
article describes all the PE I7CBM character sets in
specific detail, and shows how ihey relate to each
other and to the standaicl A.SCIII character set used
by many other manufacturers. Such inlbrmation
will be useful to any PET/CBM owner wanting to
get past the beginning stages of programming, and
will be invaluable lo anyone using the IEEE bus or
the user port to communicate with a non-Commo-
dore device.
First, some definitions. Many computer devices
can display a group of symbols, or characters, on
pa]5er or on a CRT. "fhe symbols so dis|jlayed are
called printing characters, and they consist of ieltcrs,
numbers, punctuation marks, special chaiatlers,
etc.
Within a given piece of hardware, each char-
acter is represented by a pattern of hits, which can
be stored, manipulated, and transmitted elccLri'-
cally. The binary numbers corresponding to these
bit patterns are called character codes. In the PET
ancl CBM, all character codes are 8-bit binary
mnnbers, and they are usually referred to by their
decimal equivalents.
For example, ihe code for a PRINTed asterisk
(*) is 0010 101 U binary, or 42 decimal. Eight bits
allow 256 different codes, which can be represented
as decimal numbers in the range 0-255 inclusive. A
given code can represenl different characters in
different machines, or even within one machine,
depending on context. In the PET/CB.M, for
example, different codes ai'e used to put a given
character on the .screen bv PRI N'l'ing or by
POKEing.
Some character codes do not represent a />r(»/rt/
character at all. Instead, the)- instruct the hardware
to take a certain non-printing action. The.se codes
are called control codes or control characters.
RETURN, CURSOR DOWN, and RVS are some
familiar PET/CBM control actions. If you have
ever made yoiu" machine do a RETURN by exe-
cuting the statement PRINT CHRS(13), you have
tised a control code (the 13) to generate a control
action (the RETURN).
A device's character set is its complete set of
printing and control characters, along with iheir
associated codes. Many computer devices use a
standard character set called ASCII, pronounced
ask-ee, which stands for American Standartl Code
for Information Interchange.
.4SCII and the PET/CBM character sets have
quite a bit in common, but there are large differ-
ences between them which have lo be resolved
whenever a PET/CBM is lo tronmiunicate with an
ASCII device. The information in this article will
allow you lo resolve these differences quickly and
accurately in your own programs.
The Printed Set
Now let's look in depth at the PET/CBM character
.sets. To keep things simple, we'll first investigate
the printed character set , or the complete set of sym-
bols that PET/CBM can displav on its screen. The
Character Set Demo program will allow us to do
just ihat. 1 ype ii in and RUN it light now, being
sure to include ihe semicolon at the end of line
210. If you have an 80-column machine, you need
to subsdtute line 310 for line 200.
If everything has been entered properly, you'll
see 256 evenly-spaced characters on the screen.
You'll also sec ihe notation "59468= 12" (or 14),
indicating the current conienls of memory location
59468. Press any key several times, and observe
that the notation alternates between 12 and 14,
and, as it does, some of the displayed characters
alternate as well. .'\s you pre.ss a key, the demo
program is changing the conienls of 59468, and
PET/CBM is changing certain printed characters
as that happens. No character codes are being
altered at all.
We are demoirstrating thai ever\ PE IVCBM
has two sets of ]>riniing characters. A given character
code will produce characters from one set or the
other, depending on a number POKEd into 59468.
A 12 in that location produces what is often called
the "standard" set of printing characters. It is the
same in all PE'l/CBMs, and we will call it Character
Set S, for "standard." POKEing 59468 with a 14
produces what is often called the "alternate" char-
acter set. This nomenclaiine is ambiguous, because
there are two different alternate character sets.
Which one you have depends on the ROM set
installed in your machine. In lliis article, we'll call
the alternate character set installed in the Original
"Probably the best-
documented programs I've
seen for PETICBM. "
Robert Baker
Microcomputing
Septemtier 1981
PET/CBM &
utilities & Games
"The strongest points of this
system are its unsurpassed
documentation and its
f human engineering. "
Ralpti Bressler. Ttie Paper
■ Nov/Dec. 1981
GAMES FOR ViC
Skier Thrill to downhill skiing, using your joystick to hit
flags and avoid obstacles. Great graphics. 3 levels of dif-
ficulty. $17.95
Maze of Mikor Adventure-like game with stunning
graphics challenges you to steal the Warlock's gold as
you evade the demon. $17.95
Tank Wars Match your wits against the evasive enemy,
maneuver around obstacles and avoid mines. $17.95
Victrek Graphics and sound add to the excitement as
you scan galactic maps, maneuver through star bases,
and battle klingons. Enhanced version included for8K
VIC. $17.95
Pinball Score points with flippers through bumpers and
alleys. This game is the real thing. $15.95
Simon Four squares light and sound at random. Then
you imitate the sequence. It gets tougher as you get
better. $15.95
Fuel Pirates Protect your stock of atomic fuel from
raiding pirates using your particle cannon. $15.95
Lazer Blitz Terrific graphics as you destroy enemy air-
craft from your flying saucer. $17.95
Pak Bomber is dropping bombs that you must catch.
Great challenge for eye-to-hand coordination. $15.95
NEW FOR 5K VIC 20!
Tank Trap You're challenged to protect your citizens.
4 exciting levels, each tougher than the one before.
$17.95.
Concentration Test your recall skills, when you try to
remember what you saw beneath the block, and match
it. $15.95.
Dam Bomber You must break the dam while under
cannon fire. $15.95.
VIC FORTH Full FigFORTH implementation with
compiler, interpreter and complete editor. Runs on
standard VIC 20 with 5K. $59.95 on cartridge.
HESMON Machine language monitor. Contains 50%
more commands than Commodore's. $39.95 on
cartridge.
Turtle Graphics Based on LOGO. Perfect for learning
computer programming. Great for kids. Very versatile
$39.95 on cartridge.
VIC-Rller Word processing. $39.95 on cartridge.
SPECfAL ANNOUNCEMENT
TO OUR CUSTOMERS AND
DEALERS
HES has relocated to the San Fran-
cisco Bay Area and is now a division
of USI International. We now have
greater resources to provide you wth
excellent software on cartridge,
cassette, or diskette in superior quali-
ty packaging.
Watch for more exciting products
from HES.
UTILITIES FOR PET & VIC
6502 ASSEMBLER PACKAGE
HESBAL is a 1-or 2-pass Assembler using standard
MOS mnemonics and operand formats, has pseudo-
opcodes and over 25 error messages. HESEDIT is a full
screen text editor for use with HESBAL or alone.
Assembler package runs on PET or VIC with 1 cassette
and minimum 8K, (specify PET or VIC). $23.95 on
cassette, $26.95 on diskette.
HESCOn/l transfers data and programs bidirectionally
between PETs, VICs, or a PET and VIC at 3 times the
speed of the disk. Set up VIC as a terminal to PET and
create games for 2 players. Or use VIC as a peripheral to
PET for hi-res graphics and sound. Only $49.95 on
cassette, $52.95 on diskette.
HESCOUNT monitors BASIC program's execution and
accumulates data. Essential for debugging and op-
timization. Discover how many times your program
looped, and when IF statements were true or false. Fast
execution. Runs on PET or VIC. On cassette $23.95. On
diskette $26.95.
HESCAT Complete hi-speed diskette cataloging system.
Five programs let you sort names, print reports 3 ways,
and locate file names in memory or on disk, and much
more. Works with any PET/CBM, 16K and dual drives.
$39.95.
HESLISTER takes complex BASIC programs and prints
(to screen or printer) in an easily understood manner.
Lets you analyze BASIC programs to alter or debug
code. Works on any PET/CBM and 1 disk drive. $23.95.
HESPLOT Very fast hi-res graphics subroutines for VIC.
Includes line drawing routines. With 8K VIC plot within
field of 176 X 160. On cassette $17.95
All products available at your dealer or directly from HES.
Add $2 postage. Calif, res. add 6% sales tax.
We accept VISA and MasterCard. Dealer inquiries invited.
PET, CBM, and VIC are trademarks of Commodore.
Human engineered Softuiore
71 Pork Lone • Brisbone, Cfi 94005
(415)468-4110
Div. USI InternQtioriol
Send today for your FREE CATALOG
Of VIC and PET/CBM Software
Name
Street
City.
State.
-Zip.
Mail to Human Engineered Software
71 Park Lane • Brisbane, CA 94005
I
I
I
I
I
I
I
I
I
132
COMPUTEI
July. 1982. Issue 26
GO
O
H
LLI
D_
(£
o
L.
CO
H
LU
cn
tr
LU
O
<
a:
<
X
a
LU
)^
o
a.
LJJ
Lii
OC
O
CO
LU
_l
CD
<
.5 ^
<j ■—
S -5
S! i
« I
h. *?
01 o
u —
2 To
in
o ■"
C CO
0) CO
E i^
3 O
o a.
9
OD <
CD 5
Si
CM O!
« I
a, 1—
c c
U 00
CO
CJ>
LO
so
l->
tr>
CO
CO
(D
^>
CM
n
v>
c
o
o
o
<
- e
T3 C
(O —
£ CM
ra CD
S lo
O
x: LU
u> ^
o
0.
U)
- B ■ n ■ i^i;
■■ I M IM liK m
•"I H H n li
i^ .";>: M s; lu ;y v: n
M ^ n Ki i. sJt in e
uj n- m >j5 r--- m cri o ^ oj co ti- id -xi r^- co <?■■
Q OJ W OJ OJ CiJ OJ CO 0-.1 CO 0? CJ « rt o fO CO
q: OJ OS cij OJ cij OJ OJ OJ oj cu ca fy co oj cu cu
iifSii;ssH""Bii ■■ farjiEii'*-
O -H Ca CO Tt in 'vD r-- 03 cr-. m »-< Ol fO ■* ITj
CO Ol CO cu OJ OJ cts OJ cu OJ oj oj CO cu cu OJ
» II U a II II IK 11 » Si K M a U GH li? B
iij OJ CO ■* in '■£! f-. CO CTh CD -« OJ c-1 'T in m3 r^
^lC^c^(J>o^(^o^c^(^'C^(S)CD©el(S'ecD
^ ^ rt «-< rt ,-1 ^ ^ ^ OJ CO OJ cu cu CO CO cu
■ GiiiiJBKeseiEaauriiSBia^
00 ix. m « OJ CO tf L^^ ^n N CO >J^ ® " cu CO
O Q »-< T-i tH T-t tm ^^ 1— I iH T-« tH OJ cu OJ CO
cu CO cu cu OJ CO OJ cu OJ cu OJ OJ Ol OJ OJ cu
< ■33!3cas^aiaa»aKi]BEi
c/>BaaiIBB3SS^aia!ii3SE3K:aiW3ii9
UJ: Q irt fij C.^1 tj- HI '■0 f^- CO ff- iSl •-
OJ CO t in
r- r-- r-- ^.
siasiissiiBsiasianicaDiaa
sasQsssniaasiiaBtcaDiaa
sassBSCsaiBSiiiasiiiaisccigDiBa
>jj !■■- CO !?■. o — OJ CO -t uo ^D r-. CO a- fii -■
r- f-v rv r-. © o; co oj os co co co 03 m Ci c^
'" cc 0^ ra '^ cu CO "«■ ij's '.ri r^- © cr^ o --i cu 0",i 't u"; yo !■■- OD ff'i cs ^ oj co ■* in ys r^- © on
o OJ cu CO CO CO CO CO CO o:j co co co •* * •* "tf- t * t t -s- * u'l in wi in yo iri m in in in
o
o
<
w
I I
H h T ..
H h -r — .
H h -r _
- - I I I \
- - 1 I I \
-.-II in
ti! 1J5 rv 03 Cf. ® --I OJ m t in ■JO N CO cr. o ■-H cu co •* in yj r- co i^J-' s rl w ffl ?; K iR t;
oCTi'T'O'. 0'.<SG)iS)GiG'OC3C;i(S'S--i'-' T-i^r^^— i^T-i-rtCUfUCUCOCUOJCyW
o
<
I 1^ .Q I..I XJ "iJ '-K CI -^ --^ ■'^ -ii --^ 1= P o d T
< la:£LUCiuuLU3i'-''-.'ii:-JE:::o clg
M I « - I I ! I _ - r -' -. J x'' X U r" •
LU tf ij-) ijj K 03 CTi © »-i cu CO '^ no 'Jj !■■- W Cf'
^ v£i ij3 '.jS kjj yli ^0 N N N T-- l'- r-- P- T-- r- f-
i- W +■' 3 > 3 X :?■ w + ia» "~ S? SS
i: LC( H r: > 3 X > f'j -+• *» — i¥ SS
!»■_ ^-xo<--*4-**— vr
Q ^ OJ CO t^ in ^JJ rv CO c^ C3 T-i cu CO * m
OD OD CO ro 0:> OD CO OD CO CO >Ti Cfi cr. 0^ C^ 0^
<4 <U
< CO -"
c
= # »
<j5 -
* +
* +
* +
\
m cu CD * uo '-xi Fv o;i ai ® -^ cu ('f ■* in 'i r^
g CO CO iro 0"i CO OD od od •*• "t ■* ^i" ■*'*•'*■ ■*
CD -rt OJ CD ■V \ll '■D N 00 CT' •• ""> V II -^ C-'
Gi <-< OJ OD ■* \rt md iv CO tr ■■ ■•> v ii '^ O"
ffl T-< OJ CD >* uo 'i r-- S) ffi " '" V- II "^ ^■
<JJff^Gi«-iCUCO'i-lJ'>'J5r^O50^®»^OJfO
tj- -s- IT! in in m UT if'i if"< in lo in ^0 *D y) ^
g CSCCCCIC.ICiUJLlUXi-'
< fa iTj js u T? '1 ■* en -j; •-•
t/1 c9a:cciLiCiUJU-i^xi-H
_j e: z o
.-" E P o
_i e: X ci
0. cj pi 01 t- n > 3 X > r-j ^
iX. T ^ i.'i ■»-• 3 ;:• 3 X ?» ru L_i
Cl Q Ct Li'i h- ZI' ;> 3 X >- [~J 1-1
^ l
Ul © »-» CU CO t in 43 r- co o^ o ^ cu co ■fl- u'j
o
0.
\ri r^ CO C^ C3 '-I OJ OD V m '■£1 N CO 0>i ® -^
„„rt^cjojojojojaicuojfoojcoco
BRTTERiES
11 H_ji I Ji It" i I village by the grange, 71 mccaul St. (f6) toronto m5t 2x1 telephone 596-1 405
ARBITER 1.4 MULTI-USER DISK SYSTEM FOR COMMODORE 4.0 COMPUTERS
OVER THREE HUNDRED IN USE ACROSS ONTARIO
Since September 1981 BATTERIES INCLUDED has been Installing the ARBITER system in classrooms of Commodore BASIC 4.0
computers. The computers are connected to CBM Disk Drives and printers. All users have access to all disk drives and primers plus a host of
commands to make this system configuration really usable!
THE ARBITER 1 ,4 SYSTEM IS READY TO GO!
FEATURES
1) Easy installation.
2) Uses no RAIW or Utility Sockets.
3) Up to 32 computers in one system.
4) System self initializes on power up.
5) Operation is completely transparent to the user.
6) Extended commands allow a friendly multi-user environment.
7) System design virtually eliminates interleaved printer output.
SPECIAL COMMANDS
(((8- Allows students to protect files with a five character password. A three character user ID is forced into the file name.
1" L - Allows the students to load protected files if the password code is known .
LISTC-Used to produce program listings with a Commodore pnnter. Clumsy OPEN, CMD, LIST, PRINT*. CLOSE sequence not needed. It over-
comes the listing problems found on other multi-user hardware systems.
LISTP-^ Used to get program listings on systems which have an ASCII printer The cursor control characters are expanded and displayed in brackets,
e.g <home>
ALL FILE TYPES ARE SUPPORTED - During relative or sequential file access a delay has been built in so the computer will retain control of the system
until the file is closed.
TEACHER UTILITY - A utility is supplied on disk to allow the teacher to produce a hardcopy listing and output from any of the protected or unprotected
files selected. Once the htes are chosen from the disk directory the teacher may do other tasks while the ]ob is completed.
IF YOUR CLASSROOM WAS DESIGNED TO TEACH COMPUTER LITERACY OR
STRUCTURED BASIC THEN THIS SYSTEM WAS DESIGNED FOR YOU.
Arbiter and Arbiter 1 .4 are copyrights of Batteries Included.
JUST PLUG IT IN
• No soldering • No messy wires
SOFTWARE
SELECTABLE
1 . Software select one of two
operating systems.
(BASIC 2.0/BASIC4,0)
2. Software select utility ROfvls
at conflicting addresses.
M50
00
Master Charge and
VISA accepted.
BATTERIES
inCLUDED
For 24 Pin ROM Machines Only.
Village by the Grange
71 McCaul Street
Toronto, Ontario
Canada M5T 2X1
(416)596-1405
There are over 500 reasons to
own this reference encyclopedia.
Here's one of them.
Eff'
icti^
BA5
IC
pro9'
Dealer inquiries
are invited.
"Your book is EXCELLENT!"
JIM STRASMA,
From 3 letter to the author.
A COMPUTE! Books Publication
In conjunction with Level Limited.
Programming The PET/CBM
by Raeto Collin West
The book described by Jim Butterfield as
''... unquestionably the most comprehensive
and accurate reference I have seen to date..."
The Reference Encyclopedia for Commodore 2000, 3000, 4000, and 8000 series computers and peripherals.
Here'sjust a sample of reviewer and reader reaction:
From reviewers:
Educational Computing Review by Stephen Potts
"Of all the books I have read on the PET this book Programming
the PET/CBM by Raeto West must rank as one of the most
comprehensive and readable accounts on the PET that I have ever
had the pleasure to see...
"If you wish to get more from your PET than arcade games
and simple teaching programs then this book is a must for your
bookshelf It does not matter vi/hether you run on BASIC I . BASIC
2, or BASIC 4 since all routines are supplied with addresses and
changes to make them run on any machines wherever possible...
"...this book, with its lucid explanations of the PET, its useful
routines and programming hints, is an essential purchase."
IPUG Magazine Review (British PET User Group) by Ron Geere
"This publication represents over a year's intensive research ... and
the resulting product is a valuable work of reference. A tremendous
amount of useful information has been packed in this 500+ page
work at which I was so over-awed that I did not know how to
start this review at first...
'This book is a must for every CBiVl/PET user,"
From readers;
"...a book the average to advanced user cannot afford not to
possess..."
"My copy of your 'Progrsmming the PET/CBM has been in dally
use for nearly a month and I am finding it totally addictive,
suffering severe withdrawal symptoms whenever I try half-
heartedly to move on to other reading matter. It is without doubt
the best book on its subject available today..."
"I have recently acquired a copy of your book Programming the
PET/CBM ar\6 must congratulate you on its concept and on
packing in so much detail. It's so very much better than anything I
have had up to now that it'll be my constant reference manual."
"I have received my copy of Programming the PET/CBM by Raeto
West and I have recommended it to several of my students, This
book is so valuable that 1 cannot now afford to be without it."
Published exclusively in North America by COMPUTE! Books. The book is an astonishing
reference manual of useful information. Contents include this and much more:
T Introduction and overview: Plan of the book, sources
of information, features and chronology of CBM hardware.
2 BASIC and how It works; Storage of BASIC and its
variables: tokens, pointers, syntax; optimising BASIC.
3 Program and system design; Capabilities of the
equipment; charts, algorithms, space, timing.
4 Effective programming In BASIC: Seventeen examples,
including subroutines, dates, DATA, INPUT, rounding.
5 Alphabetic reference to BASIC keywords; Full
descriptions, with examples, of all keywords, with methods for
adding additional commands not present in CBM BASIC, e.g.
AUTO, DEL. OLD, POP, PRINT USING, SORT. VARPTR,
6 Disk drives; Descriptions of operation and workings of
disk drives, with BASIC and machine-code examples; bugs.
7 Alphabetic reference to disk BASIC commands:
BASIC 4 disk commands with examples and notes.
8 Other peripherals and hardware: Tape storage and
handling; printers; modem; keyboard; EPROMs; reset switches.
9 Graphics and sound: Tables of CBJVt characters; CRT chip;
animation, bar plots, 80 by SO etc.; user-port sound.
10 The transition to machine-code: Introductory concepts;
a BASIC monitor; use of MLM, Supermon, Extramon; easy
examples.
1 1 More 6502 machine-code: 6502 hardware features;
eighteen common problems in programming; debugging.
1 2 Alphabetic reference to 6502 opcodes: Examples,
notes, and explanations on each opcode from ADC to TYA.
13 Using ROM routines: IRQ, NMI, RESET; the Kernel;
examples - modifying LIST; ordinary and relocating loaders.
14 Effective 6502 programming: Assemblers; CHRGET
and wedges; PIAs, VIA, IEEE; common mistakes.
1 5 Index to BASIC ROMs and RAM: Memory map of RAiVI
and ROM, detailing and comparing BASICS I, 2. and 4.
16 Mathematical programming; Precision; equations;
statistics; simulation; finance; calculus; machine-code.
1 7 Programming in business and education: Examples,
applications and pitfalls in business and education.
Appendices: 6502 reference charts; Supermon listings;
ASCII; glossary
Plus many programs, diagrams and charts. Paperback, 504 pages. ISBN 0 942386 04 3. $24.95.
To Order
Programming The PET/CBM
Call
TOLL FREE 800-334-0868
In NC Call 919-275-9809
Or send coupon to
COMPUTE! Books, P.O. Box 5406, Greensboro, NC 27403
In England, order Irom Level Limiled, P.O. Box 438. Hampstead, London,
NW3 IBH. Price in England (S EH,90. including P & P,
Please send .
. copy fcopiesf of Programming The
PET/CBM at 524.95 each. (In the US and Canada, add S3.00
shipping and handling. Outside North America add S9.00 for air
mail delivery, SB.OO for surface delivery).
All orders must be prepaid in US funds (money order, check,
or charge).
Q Payment Enclosed
Please charge my Q VISA □ MasterCard (^ Am. Express
Account No. Expires /
Name
Address
Country
State
Zip
Allow 4-6 weeks rof ddiveiy Foicign ^vrlxe ddrvfi>- allow 2-i monlfis
136
COMPUTEI
July, WS2, Issue 26
m
o
h:
LU
Q.
CC
o
LL
CO
h-
LU
CO
OC
111
H
O
<
DC
<
o
GC
I
o
I
cvi
LU
_l
<
tn w
in g
CM ^
CD
V7
OJ
T3
O
u
XI
u
E
o
e
« -' TO
^ t ■
o -S <
(ft
05 *^
- £
CO ^
" 1; o
c
o
a:
c
o. g
o
-I-
VI
c
1-
o
"Ci
UJ
CO
l;
c
<0
o S •-
XI .c 00
sT ■=: S
^ g s
g. S in
m "5 Q.
V ■
C ^ (-1
2 ^
« o g
^ & E
" to =
.E -I c
°-5 CM
C --. ,-
.2 c oo
+j *^ ^o
I 8 a
.2 •§ m
CC ^
S "5 O
O i: Q.
I- O w
o
<
Q.
Crt
x;
to
I I
o
<
<
ij- U-! vo r-- CO IT. o ■-^ fu o * in 10 r-- 05 0^
cu cu cu w cij w CO 01 n CO cm « n a n fo
aiftjcuftjainjfticucuaifafufijtucufti
<- -i t- T _ - ~ I I
•- H h -r _ - " I I
>- H h -r — - - I I
© T-i CO n rf 10 M3 N 03 1?^ a ^ w CI It lo
ftj W (U ftj OJ OJ iTJ Ol W OJ W OJ OJ w cu cu
1
\
H
■
T
m
fC-
1
\
■
■
1
■
s:
1 1
■
■
-1
*
t=
nj
XI
u
-c
,1, L^
CC
CQ
O
I
o
Ul u.
♦
1
1 1
CO
^f
in
^D
N CO
trt X ^-i
M
I ♦ -
^^
E
c=
o
_J
£
z
o
J
,,'-
\
L_
t
in
■.o
N
ii. tr 1- w ^' o :■■ B ':<
Q.csci!;u-i(-:3>3x
:t' fij + «k — ;::: ^
> N + OT. — Sf a?
CA © --I Ol CO
Cr>cr"C^'<J''ff^Cf>C'iO^©CD©Q©©©CD
-^ 1-1 r-< .H ^ .-1 rH -w CO OJ CiJ CU OJ CU OJ fU
a>cfo-!CU<0'ifiny;rvcoCT^si-<(uc"
SlOT-^^^«-ll-^T-(^-l»-^.-l^^lHflJClJC^IC^J
OJ fij cy CU cvj CU CU OJ CU (\j CU fij cij OJ CU CU
x:
CO
I I
I I
I _
I „
« © '-I OJ CO -ij- in
X 'Ji <£) <£t •^ 'J) <0
M3 N 03 0^
'j5 y;! SO yi
rt CU 03
N N T'--
I
I
I
if)
H I- T _
H I- -r „
1 1
1 ^^
1 1
1 V
1 1
1 1
J'
MS N 03 0^ Gi *-< CU CO ft m iJD N 05 ffi 6J '^
r^ N f-. [■- 03 Oli 03 03 133 03 03 03 03 CO OS 0^
z
o
^ »
c
3
CC
03 0^ © "-I OJ CO
i3J OJ 03 03 03 03
(2
«>
I"
in ij3 r-- 03
00 03 03 03
03 ^
DC B. *
j^ §■ *-
w 6 cS
tH OJ 03
« s S S! ^
u oz o -
c =;
I
o
Q
't LHi 'Jj r- 03 ?■■ O • ,-^ . , ..-,.„,- w ^, ■
.J- It ^ ■* 'S- t in It"-' in b") in in in in in in
1^ Ul
CJ '-
OJ CO Tt. in ii3 r-- 03 O'.
o
o
to
Q.
00
» 4A W *ii
# « ,vr rf
-. : « 4^ A" <^S
N CO 0^ iS <-! OJ
CTi I?"' ff'i CB © ffl
Ck' o
«
+
■t
1
*
+
*
1
*
+
^
t
y3
03
O rt f.j i,-.-j XT [Tf Lj;i N- 03 0'-
G) 'I w 03 '^r in yj N CO CT.
s »H OJ CO ■* in y3 N 03 a-.
OJ 03 -3- in yj N 03 0^ (S >-< OJ 03 * in VJ3 rs.
^^rt^^t-irf»HCijfUCUOJtUCUOJfU
■l
V
II
.A.
f^
^
V
II
/■s
0
^
>■/
II
A
0-
r-t ^-H 1-4 *H
O
0=" a:
ra CC
CO U Q UJ Ul IJ3 X M >-:, i; J E z: O
IS JJ u "C?
01 J- "r" -i-J ^
E P
CClUiDLJU-L:3XMi-)ii;_|E:^0
■t lf3 i£)
li) *£! k£(
CO ij>
yj 1.JJ
CS>
OJ 03
03
CL G CE tn H 3 > 3 X. > W i-i / " +- -i
ilO-i-w-wsS 3X>WLJ.''"<--1-
Q-aoiUl H3>3X>Ni_i/'~'<- 1.
Q »-( OJ 03 'it in y3 r-- 03 0^ <s -• oi CO -* in
CO 03 03 03 CO CO 03 03 CO CO 0^ 0^ 0^ C^ ff^ 0^
o
<
Q.
crt
I
*
« ;-■: cS *
■■_■•
.''■.
*
+
• 1 . \
*
«■ .V '.^ •
^^
.--s
*
+
» 1 • \
*
4* .^.r «3 '
^^
,■-•.
*
+
^ 1 > \
in
CO
so rv CO ch
03 CO 03 03
©
*
*
OJ
CO
Tt UT y3 rv
^ rt ^ ^
(s — OJ CO •* tiT ij3 r- CO o^ " "* V II .^ ^■
Q »-< CU CO ^ in y3 N CO ff' '• "< v It A 0-
Q T-i OJ 03 t ID y3 N CO 0^ <• •* V II A C^-
H>CPiOrtCU03'*iny3N(BO^O--'OJ03
* * ID in in in in in in in in in ij3 ■.£! ij3 y?
z
g
I-
o
<
M © ^ OJ 03 -.f in
I
u
a
o
Si
QQ
■.Jj N
c
3
(U
^
CO iT< Gi i-H CU CO 't
It"?
^ >2
O a
Q 2 ^ « a>
>- S E ^ 4 S
£ o O m ^ ,S
O QC I Q Q IJJ
§
^
Ul
O
y3 r-^ 03 (J> fii '-I OJ 03 ^ 10 VO N 03 ff* © '^
^,-t,H^aioJOJOjaiojcuaiOjOJC*)fo
^v\sv
versacalc"
A UNIQUE VISICALC(tm) ENHANCEMENT
NOW MM\AAU: FtlR PET
L
If you use Visicalc( tin) but are
bumping into its limitations, you need
Versacalc( tm) ! Versacalc runs within
Vlslcalc but uses no extra memory; in
fact, it effectively increases memory by
letting you call in taodules from disk as
needed.
A Tutorial section makes clear such
features as @LOOKUP, DIF, @NA, 0ERROR,
which are not well explained in the
Visicalc manual.
A Utilities section makes it easy to
create your own menu~driven modules which
condense hundreds of commands into four
keystrokes. You can build in aophist-
Icated error checking (e.g. Is the input
value between certain llmlta?). Now it la
possible for people untrained In Visicalc
to perform the weekly updating without
constant instruction,
for Comnodore Pet I, CBM 2040 - DOS l.n
available for 8050 on request
KetTil S125
SORT Visicalc, and Other Useful Wonders!
NOW YOU CAN:
SORT a Visicalc screen on any column,
ascending or descending, and all
related formulas and labels are
sorted too.
put the entire disk CATALOG on the screen
at once I
easily do Year-To-Date accumulations!
"pound" formulas to expose the full
formulas in place on the screen!
append two Visicalc files!
print the contents of a /SS file!
print the contents of a /PF file!
AND our EASEL BINDER is so nice that you
will put your other manual in It!
Distributed by:
Anthro-Digital Software
P.O.Box 1385
Pitlsneld, MA 01202
413-448-8278
VeisacAic IS t rraaemaih ol Voriacaic EnteiDr-se& inc
Visicaic IS a tiaaema'h ol Personal Soti ware, inc
_J
Tlie
...„ SM-KIT is a col lection of machine language firmware programming and test aids for
BASIC programmers. SM-KIT is a 4K ROM (twice tfie rwrmal capacity) which you
simply insert in a single ROM socket on any BASIC 4 CBM/PET-either 80 column or 40
column. Includes both programming aids and disk handling commands.
ERROR DETECTION: the SM-KIT automatically indicates the ermneous line and
statement tor any BASIC program error.
LINE NUMBERING: the SM-KIT automatically numbers BASIC statements until you
turn the function off.
SCREEN OUTPUT the commands FIND, DUMP, TRACE and DIRECTORV display on
the CRT while you hold the RETURN key (display pauses when the key is releasedl.
Continuous output is selected with shift-lock
OUTPUT CONTROL io DISK or PRINTER: in addition to displaying on the CRT, you can
direct output to either disk or printer,
HARDCOPY: allows screen displays to be either printed or stored on disk
FIND: searches all or any part ol a program tor text or command strings or variable
names. Either exact search or wild card search supported.
RENUMBER: the SM-KIT can renumber all or any part of a program, The selective
renumbering allows you to move blocks of code within your program.
VARIABLE DUMP: displays the contents of floating point, integer, and string variables
(both simple and array). Can display all variables or any selected variables.
TRACE. SM-KIT can trace program execution either continuously or step by step
starting with any line number. Selected program variables can be displayed while
tracing.
DISK COM MAN DS: as in DOS Support {Universal Wedge), the "shorthand" versions of
disk commands may be used for displaying disk directory, initializing, copying,
scratching files, load and ain, etc.
LOAD: SM-KIT can load all or pari of BASIC or machine language programs. It can
append to a program m memory, overwrite any part of a program, load starting with any
absolute memory location, and load without changing variable pointers.
MERGE: allows merging all or any part of a program on disk with a program in memory.
SAVE and VERIFY: SM-KIT provides one step program save aixJ verification. It also
allows you to save any part of a program, or any address range.
DELETE: ailows any program segment lo be deleted
REPEAT KEYS: allows repeating functions it not already available on specific
PET/CBIVl model.
SM-KIT
for Commodore Computers
A Programming Productivity Tool
ONLY
$40
A 4K ROM with both
programming and disk
handling aids.
Developed by (and available in Europe from) SM Softwarevetbund-
Microcomputer GmbH, Scfierbaums basse 29, 8000 Munchen 83, Germany
252 Bethlehem Pike
Colmar, PA 18915
21 5-822-7727
A B Computers
WRITE FOR CATALOG.
AOD SI ^"i aer iBflfi liu shipping Ai' I'.iy IilMiKi- ii' UPS •^iirt.il e i ti,iri].>
111 .1" veoM i»df!s Piirpv nsMl .Vf .«' ..isi J.v.n.nr :mms Rnjui.n
Alices siiqiii'v rjiqrn>r
138
COMPUTEI
July, 1982, Issue 26
PET ROMs Character Set AO, for "alternate, origi-
nal," and the alternate character set in all other
ROMs Character Set A. These two alternate sets
contain the same characters, but in a clifTerent
order, as we will see later on.
About 75% of" the characters in all three sets
are identical. Sets S, A, and AO differ only in the
characters produced by the alphabetic keys A
through Z, and in four other characters, all
graphics. At "power on," graphics keyboard PET/
CBM's have Character Set S enabled, while
machines with business keyboards have Character
Set A.
Character sets can be switched by POKEing
59468 with 12 or 14, or with other numbers as
well. Numbers having a binary representation of
the form XXXX 1 lOX vk'ill produce character set S,
while any other number will produce your
machine's alternate character set. In machines
having the GRAPHICS and TEXT commands,
these can also be used to switch characlci' sets.
Now^ back to the demo program. Without
touching the keyboard, study the characters dis-
played on your screen. Notice that there are 256
characters, all different, and that the first 128 of
them are repeated in reverse field to make up the
second 128. (There may seem to be two identical
SPACE characters, but there aren't - the second
one is SHIFTED SPACE, and your computer
treats it as a separate character altogether.) This is
the complete set of printing characters from the
currently activated set. In other words, you are
looking at every character your machine can display
at this moment.
Now press any key and study the characters in
the other set. Again, there are 256 unique symbols,
128 regular and 128 in reverse field. Press a key
several times, and notice which characters change
as the character sets are toggled. If you count
them, you'll find 60 characters that change — 30
regular and ,30 reverse field. Note which ones they
are, and notice that certain combinations of char-
acters can never be on the screen at the same time,
the HEART and tlic lowercase "s," for example.
You have now^ seen every character that your
machine is able todisplay. All other PET/CBM's •
have the same printing characters, but in some
machines they are gotten at in a slightly different
way. Altogether, there are 316 different characters,
256 of them available at any one time.
Since we've now looked at the complete reper-
toire of printing characters, let's look further into
character codes, the other part of the character set.
A character can be displayed on PE IVCBM's screen
in one of three ways: by POKEing a code into a
screen memory location, by pressing a key, or by
executing a PRINT statement. Additionally, your
machine can send characters to, or receive them
from, devices connected to the IEEE, user, recor-
der, and memory expansion ports. In every case,
character codes are used to specify which character
is to be displayed, recorded, or transmitted.
The Screen And CHR$ Sets
Our demonstration piograni POKEd cliaracters to
the screen, using the 256 character codes from 0 to
255 inclusive, which produced 256 different
printed symbols. POKEing a I gave an A, a 2 gave
a B, and so on through all the printed characters.
This particular combination of codes and characters
is valid only for screen POKEing, and is summarized
in Table 1 . We'll call it the Screen POKE Character
Set.
All other character manipulation in the PET/
CBM uses a completely different group of codes to
print these same characters, and it is summarized
in Table 2. Many of the printing characters and
control functions in this set can be acti\'ated directly
from the keyboard, and all of them can be activated
by using the CHR$ function. We will call this the
CHK$ Character Set.
Some people call it PET ASCII, but that ter-
minology is misleading- PET/CBM's CHRS char-
acter set has twice as many codes as ASCII, and
only about half of the 128 ASCII codes have the
same meaning in the ASCII and CHR$ character
sets!
All PET/CBM keyboard and PRINT opera-
tions use the CHR$ character set; it is afso used
whenever characters are sent to or received from
external devices such as printers, files, or modems.
If you tell PET to send an asterisk to your printer,
it will, in fact, send 00 10 1010, or 42 in decimal
notation. And whenever PET receives a 42, what-
ever the 42 may have represented in the sending
device's character set, PET interprets it as an
asterisk.
There are 256 CHRS codes, numbered from 0
to 255 inclusive, and the CHR$ character set differs
substantially from the POKE set, although both
can be used to display the same symbols. Here are
the essential differences:
• Very few characters have identical POKE
and CHR$ codes.
• Tliere are no CHR$ codes for reverse field
characters. Instead, the RVS ON/OFF key or
its corresponding CHR$ codes are used to
produce them.
• The CHRS set includes 14 control characters
(28 in SO-coknnn machines and newer 40-col-
umn machines) in addition to its 128 printing
characters.
• Since there are 256 CHR$ codes, and only
niJFEKnp r. ^[)(B»^(^
HARD SOFTWARE TO BEAT
ANY 5 $42.00 : ANY 3 $27.00 : ANY 1 $9.95 : OUR CATALOG FREE!
SEARCH - Olive through 3 giant m,ue of looms encounterine money bags, luel tanks, arnj moving oil ilicl<s that
slide you back to slan. Noljody heie has evei eoHen all eighteen lugs-but we're still at it and soon . . .
ALIEN PANIC - Climb laOdeis, dig holes and drop aliens . . . Quickly'
KRAZY KONG ■ you have to i:limb to the lop but Ihis crazy monkey keeps lolline bairets'?
VIKMAN - Sweep up dots Ijelore monsters mop you up.
QUIRK - Arcade type game where rf you're not awake the door Irteially moves out Irom under your teet.
Fortunately loi the careful land the Qurck) the rewards roll rnio your pocket.
RESCUE from NUFON - a Graphic Adventure game played wrin the keyboard. Some commands die. N.S.E.W, for drrection, T lor
transport, U and 0 lor the 5 flooi elevator. Unot-r youi watchful eye itheie .iie certain undesireables rn
these rooms) youi guy frnds and tr,inspoit5 hum.ins to safety. One player average 20 min.
DODGE CARS - Fast fun on crowed freeway. Thrs colorful game keeps lop 5 i compares agarnst last 50-
INVASION - Protect energy pods from being stolen by enemy shrps. Simple and challenging.
******* SPECIFY KEYBOARD OR JOYSTICK *******
nuFRnm iiept.
EXTENDED MEMORY & DISK GAMES
AVAILABLE BY TIME OF PRINTING
WRITE FOR NEW CATALOG
Also 32K Ktazy Kotig for the ATARI
WRITE
nUFEKUP
P.O. BOX 156
SHADY GOVE, OREGON 97539
OR CALL 503-378-2113
MASTERCARD - VISA - C.O.D.
VIC 20
VIDEO
HERE ARE THE SAME PROGRAMS
OUR TELEVISION PRODUCTION
TEAM USE FOR MAKING COM-
MERCIALS AND SPECIAL EFFECTS^
COLOR BARS, COUNTDOWNS. AUTO
SLATES. GRIDS, PULSATING SINE
WAVE S, STAR BEDS + MUCH MORE
EASY TO CUSTOMIZE & SAVE.
ALL CRAMMED IN ONE TAPE?
20 OO
SEND ZOO FOR CATALOG OF
UNIQUE VIC ACCESSORIES.
PENTHOUSE
MIAMI. FL. 33181
VIC 20 IS A T.M.OF COMMODORE
PET/CBM OWNERS
WALLBANGER - Blast your way through the
dodge'm, blasfm, and attack modes. If you
destroy the bouncing balls before they destroy you,
the walls close in for the next round. Wallbanger is
written in machine language, has great sound, and
encourages complex strategies.
CASenK/WCOLBCREEN/OUVNEWIiaiM SnO.UlJ
(CAUF. RES. ADO BN BALES TAX)
MILLIPEDE - Exterminate the oncoming millipedes
and fleas as they descend thraugh the mushroom
patch. Blast giant bouncing spiders before they
pounce on you. Shoot a millipede in the body and
suddenly two millipedes descend toward your ship.
Millipede is written in machine language, has
excellent graphics, and great sound.
CABB/BK/WCOLaCaEENAJLD^EWnOMB $15.00
(CAUF. RGB. ADO B« BAUSTAX]
Write for FREE game details:
ON LINE SOFTWARE
P.O.BOX S044
ORCUTT, CA 33455
WARNING! These games cause high panic levels!
PET/CBM OWNERS
"0 COMPUTEI July, 1982, Issue 26
<
a
c
O P
^ E
Of
p p en
>-• OJ CO * .,ri .,H 4,
O-U P (iWW i-30F
2 Of O O O O O U E E £ O 4-' "'Cf P itI "O -P -t^ O
■> E 4J ►• l. i_ t. t.i-1 3 r/i Ifl 4J itj 4-' ^ !^ n) X +J ^
rZ' ffu (uj-'+j-t^-l-' ^•T' p p-t-' itii- u fi) dj ■!• i/i<i)nj
TT •S"' i-pppp -o It) IT) X i. K> ^ ft) a. j: 4Ja.zpi-+'
"^ S"" * oooo ji4; i- i-a. tjiida'tiTr * -p 4jo't)
C/j ^<u u 4>uuuu pE jj +.>+^aiQ.ai4J>i'ai wp3i<. i^-^po.^
<■ 9) '-' in tji -^ ■y^ 4 * w p a. > "H ij o o +J o 4i 1^
Cf Vl*-HUUULl-P O'-'OtOO Q.W 4J l.4J+.>+jil.4-'4J-C ••'
_, pr-jsiUi-TJ.^.vi-^iliiXl 3 tit E'l'3"H4i*^i-^0>^-i*-i-IJl-WU-«-'4-'
CI^ "q Ji: '^ U P 5*- > > > >.—*+-« "O IT 73 Lf "O "O I*- --^ O '*- P Ul ^-* u ■■h '-^ (fl n^ "^ ^ p '^^ ^
^ 1. u ■! 'U IT) ■Tj Oi -L ■!! ai '1) ■■* P P p 1,1 P P O ■■'' 1- '3 -^ Cb :? li -"^ -1^ 4-' 0. -kJ 3 71 IS Oi
^ c iICUCClOOCsi2iOCiCiOljJUUUULiLi,Li.aX_IZZli:UTLni/lLriU1l/lO*lD>
-I- U I I I I I I I I I I I I t I I I I I I I I I I I I I I I I I t I I I
LU S
2v-J S -hCU (n'J'_|LLl GKOCClX ii_l XOXQ32
O
ff: ^ ouwiii;a6ucjujE±bi7iPt-^u.Lnuii~LuSDmMoocLH5>i/i
LU ST (T (H Qi f_i O Ci Q Ci O Q Q U bJ U Ul UJ U U. Ll in I _l Z: Z Q: Ul 10 W ITi in in LO 3
Z
z
o .. :
p e p
o
LL
Z
cc
o
LL
LU
Q
o
o
Q ^ I I I I I I t I I I I I I I I I I I I I I I I I I I t I I I I I
o
"r*
<*■
o
1"
4j
w
w
a.
CO
P
41
*
J-
■*-
j:
X.
.-1
4-1
4j
Ci
Jli
4J
+^
r\
iTl
*
It
on
CL
1-
P
p
W
E
-it
4-1
Jsi
4.1
Jl£
a,
4i
•ii
Tl
01
Oi
3
■ tj
p
:^
•tl
ij
P
U
4.1
u
P
u
S
P
ti
p
01
P
Oi
1^
P
u
.13
,13
Tl
iTj
X
P
f?
■ *^
ifl
■^
p
•^
■■H
•o
^
iX
a
E
C
p
P
4-1
iTj
.i3
VI
JO
*
111
u
41
-a
tu
+.'
O
w
Irt
p
a
^
'■^
^,^
o
n)
P
-•-
.-^
p
u
fl^
!■»
■tJ
■H
n)
o
■71
cn
w
,— *
^
L.
Cf
LI
Ol
•11
cn
i-t-
..^
13
Cl
Tl
rji
E
•p
^
V
P
W
i>-
P
p
'T-
p
■o
o
4.'
Vl
ll
■T-
1..
P
Vl
P
e
.—rf
p
U
p
o
")
.1)
4-
■fl
ai
L.
4--
'T'
■*■!
'll.
,13
•11
0
4J
p
l.t
.--"
■I-'
+■'
Ill
■.I-'
^
..H
■^
!l-
'!<
■T-
..H
...-
ai
t^
+■'
j;>
>^
u
Ill
W
P
I/I
4i
1.1
E
-L.
't-1
P
o
••V*
W
.13
iTl
l.l't
E
P
■ll
w
u
it
>
p
4-1
Vl
•w
1 1
l-l
P
^J
I'll
O
•X"
Q
4^
3
p:
i;^
y
il(
F
1^
•n
ill
ll'
F
--.
o
^-1
',
p
■n
ill
s
«
F
X
3
3
o
<i<
e
CU
a
w
^
■5
■St
Oi
j-^
o
ll
<il
rr
i^
3
o
O.
Ill
.1-1
m
•1-
(0
u
CJ
Z
Ci
Cl
(E
CC
o
o
CE
fl.
O
X
Cl.
V\
o
W
J
bj
u
O
O
o
ct
o
O
3
P
O
>
o
i-
^ = 0:1 ^ 111 !.£ N CO CTi O -H CU CO 't ID iXi N CO C^ O i-h fU CO ^sf »-< CU 07 t U7 'JD O t UT ^£1
5 c CO 00 CO CO CO CO fi rj- Tj- * If -* Tt -If Tj- iTi in ■.£! y; •■£! yj vi 0^ CT' cr> cr. a\ ON cu cu cu cii
•■^ ja u T3 ilf 14- Gn -C •'' -ll .ii ■-■ E P o Cl rr i- I'l 4-1 zi > 3 X :7> rg 1-y -- 1^ J O
< —
CO
z
7^ i-ii r- CO cTi o -^ cij CO ■* in md f'- 0:1 cti C3 --i cu co * ini '.fl h- co a^ si -^ oj c'v ■* in '■c h-
y c^•lC^a^c^ll^Q^Ol^ClselGlG>'-|-'* .-(•^-^'-'.-(^TtrtOJcucucuojojaifu
LU
< i
C^CCQjOQUU.iaii-i'-Jiii-JSZCD Q.CSCt'Lrit-=i>3X;-NLj/
«-, Tfbo^jjNcoff^sii-'Cuco-tu'j^dNait^ o-T-icuco'^invCNcoc^o-^cijco^in
'■J -= -,£1 ID lO Ml ^ii ^£1 r-- N N N N r-- N N N h- 00 05 CO 00 OS 00 00 CO 03 CO ffs C^ iji (?■ ff\ 0^
UJ p
_l
CO
<
m B
a.
.£ ij-| „, : * 4# ;.„■ i,;; » ,j .■-. # -(- •, t . \ O •-< OJ CO it UT '-b N 03 Cfi •■ "i v 11 '■^^ (>■
S cu CO * in '■fi N oj ON Q '-' cu cci ■* in ^43 N 03 gi ® -< cu rt If rj *c f^- 03 ON ® -1 cu c>:i
■c oifofooococ^coco'd-'tt'fl-'i'i^''*'^ ■*'J■lo^ou^tnl^lmmuolr)lnvJ3^^DlvD
O-IIXXh-Qiii— I UJ'-iCiJfO'tiiZCQZ CCCi
to3oi~H-oz;ouLnHu.HLj.ii:oi-< _jocjL)Cja:3-f-a:E3 ui in m iri ot
< Z lj-| Ul Ui Ld Ul CE CO CD X _J 5- U. O L>'1 LO Q Cl Q Ci lii S O'i U CJ Lt LH U ll. U3 Ct! ^i
,E 13 1-1 OJ CO Tt UO isO r^- 03 i7> Q --I OJ CO * U"j \j3 N CO CTi ® --t CO CO -a- UT 1J3 hs. CO CT^ CS -^
jT ,,_ rt rt »-< rt --1 *-i »-. rt T-i cij aj cu cu cu cij OJ OJ cu cu («) CO
July, 1982, Issue 26
COMPUTE)
141
128+ 14= 142 CHR$ characters (156 in some
machines), many of the CHR$ codes have no
meaning at ail in the PET/CBM, and in many
cases one primed character has two different
CHR$ codes!
Table 3 shows tlie standard ASCII character
set. It is presented in a similar format to Table 2, to
facilitate comparison of the ASCII and PET/CBM
character sets. Study the two tables carefully, and
you'll see that PE 17CBM has all but seven of the
ASCII printed characters, (94-96 and 128-126),
but often with differenl character codes.
You'll also notice that ASCII, being a .seven-bii
code, has no character codes above 127, and lacks
many of PET/CBM's printing characters.
Because there are so many ASCII control
codes, most ASCII keyboards use a special CON-
TROL key, similar to the SHIFT key, to generate
theiri. CTRL A often sends a 1 code'(SOH), CTRL
B a 2 code (STX). CTRL C a 3 code (ETX), etc.
Also, the meanings of the ASCII control codes,
established with commercial message traffic in
mind, are almost completely foreign to PET/CBM.
No wonder it's sometimes hard to u.se non-
Commodore de\ices with yoiu' machine! But now
that you have Tables 2 and 3, you can write pro-
grams for perfect conversions between ASC'll and
PE I7CBM codes. Table 2 shows you exact!)' what
code PET/CBM sends when a given character is
transmitted, and fable 3 sliows you exactly liow an
ASCII device will interpret that code. Conversely,
Table 3 shows you the intended character repre-
sentation of every ASCII code yom^ machine re-
ceives irom outside, while Table 2 shows which
code it has to be converted to to have the same
representation inside your PET/CBM.
Some Example Conversions
A few examples will illustrate the conversions.
Suppo.se that yoin- PET, with t^haracier Set A
enabled, is connected through a modem to an
ASCII terminal, and that you are sending messages
back and forth. The ASCII terminal sends the
lowercase Idler "a. " Taiile 3 shows that the code
actually transmitted will be 97 decimal, or 0110
0001. If your PET receives that code and displays
it on the screen as a PRINTed character, Table 2
shows that it will be displayed as an exclamation
point!
So you'll need some software in your PET that
converts received ASCII input to CHR$ format
before displaying it. In this case, whenever PET
receives a 97, the prograrii sliould convert it to a 65
before PRIN'fing it. Of course, the program should
also be smart enough to convert (or not convert)
any of the other ASCII codes between 0 and 1 27 so
that they give the proper display on your PET.
Going the other way, suppose that you press
the inishifted "b" key on your PET, and want the
distant ASCII terminal to see it as a lowercase "b."
Table 2 tells us tlial your PET will send a 66, which
Table 3 tells us the .-iSC^II terminal will interpret as
an uppercase "B," which is not at all what you want.
So your program has to convert the 66 to a 98
before transmitting it, and to make conversions
on any other transmitted characters where it's
appropriate.
If you study Tables 2 and 3, you'll be able to
determine every sending and receiving conversion,
and to write your programs accordingly. If the
remote device has a character set different from
standard ASCII (many of them do), all you need to
do is compare it to Table 2, and you'll be able to
program the conversions.
100
REM *** CHARACTER SET DEMO ***
120
REM
130
REM SHOWS EVERY PET/CBM CHARACTER
140
REM (KEY PRESS CHANGES CHAR. SET)
150
REM
160
PRINT" {CLEAR} "
170
FORCH=0TO255
180
POKE(32768 + 2*CH+40*INT(CH/20) ) ,CH
190
NEXTCH
200
FORI =1T02 3: PRINT: NEXT
210
PRINTTAB(32) "59468=1";
220
IFPEEK(59468)=14THEN250
230
POKE59468,12:POKE33767,50
240
GETA$ :IFA$=""THEN240
250
POKE59468,14:POKE33767,5 2
260
GETA$:IFA$=""THEN260
270
GOTO230
280
REM
290
REM ** LINE 200 FOR 80 COL. CMB'S:
300
REM
310
F0RI=1T011 :PRINT:NEXT
Simulative Strategy Games
for the
VIC-20
from p.R. SoftWARe
These simulative strategy games combine graphics and strolegtj
situations to offer maximum enjoi/ment and challenge. No
jo^/sticks required. Non-arcade games.
• STAR DEFENDER • CONVOY ESCORT
• CONVOY RAIDER * COMPUTER BASEBALL
• BOXER'S CORNER • DUNGEONS OF KAL
$11.95 each
S<?nd check or morey ord^i plu^ £1 50 posiag^ and handling to:
P,R, Software, P.O. Bob 169, South San Wwmnclmco, CA 94OS0
Calif, R^$. add 6% sal^s lak
Dealer Inquiries Invited Pro^ripmrncrs «dught
VIC-20 is i registered trademark of Commodore Business Machines
142
COMPUTE!
JuV. 1983. Issue 26
In the May issue o/ COMPUTE!, Steve Steinberg's nrlic/c
"Ltntgunge Lab" was inadvertentl\ published with the
wmitg Ijwgmni accompanying it. It is reprinted liere in
its entirely.
An ATARI Learning Program
Language Lab
Steve Steinberg
Washington, DC
Language Lab is a program to use your ATARI lo
help you build vocabulary in a foreign language. Fi
is basically a eonipulerizecl version of that old
standby ol language education, the Hash card set,
and I have found it extremely simple and effective
to use. It is structured so that you can drill and
score yourselfon as many words as you like, but I
find it most useful if you display a fifteen or twenty
word vocabulary cirill on the screen, spot the errors
and review them, then trv again. If you have enough
memory, you can also use it to create a fair sized
foreign language dictionary.
I have use<l a handful of French words in the
program example biu you can easily change this to
anv language vou want. Simply change line 55
L.4N(;S = ''FREN-CH" to LANGS = "GERMAN",
■SPANLSH"', "NAVAJO" or whatever vou like and
enter the appropriate word pairs in DA TA.
The 1),\ r.-\, beginning on line I()(H) is easy lo
expand as your language skill increases and can he
u.sed in conjunction with either a self teaching or
school language course. Just enter (he DA TA in
word [Jails, the lirst in English, the second in
whatever language you are woiking with.
The key to the vocabulary drills is the random
word subroutine, lines 500 through 550. In line
510 X = (l +IN r(RND(l)*25)) tiie 25 is equal to
the ninnber of word pairs entered as DA F.A. As
you increase the nimiber of word pairs bv adding
new DATA this number should also be approp-
riately increased. You can also alter this line lo drill
yourself On only part of your total foreign language
\'ocabulary.
Let's assume, for example, that you have 600
word pairs in DATA but only want to cirill yourself
on the last 100 words \ou ha\e entered. In that case.
change line 510 to X = (500 + INT(RND( I )* 1 00)).
Lines 160,180,260,280,330 and 430 use the
ATARI cursor advance and line "up" arrow keys
to provide a format that will display as much of
your language drill or translations on the screen at
one time as possible, but yoti can replace these with
Just "PRINT" statements if you prefer. This would
be useful if you want lo use the program for cirill
and translation of whole phra.ses and sentences
instead of jusi single words. Don't forget, however,
lo increa.se the size of the appropriate string di-
mensions (ENGLISHSAVORD$,TRANSLAFES)
in line 50.
One final note; if vou hajjpen to own IRIDIS
2 (and if you have an AT.\RI (()m}>uter 1 don't
think you can find a better bargain in software)
vou can easilv add the appropriate subroutine to
use Language Lab for Russian, (ireek, Hebrew or
whatever you wish by adding the foreign alphabet
in lowercase. I am cinrently using the })rogiam to
teach myself Classical Greek. I hope this program
will be useful for budding language students and
in any ca.se good luck with it, bon chance, and auf
wedersehcn.
46 REM LANGUAGE Lfifi
41 REM
45 REM Ei STELE STEINBERG
50 DIM LANG$( 15). ENGLISH*'; 20). 140RD$( 20).
TRftH3LftTE$(20).Q$<2)
55 lang$="frem:h"
60 print "(clear)": print " ";lang
$;" LfiHGUAGE LAB"
65 PRINT = PRINT
70 PRINT "D ";LANG*>" TO ENGLISH UOCftBU
LAR7 DRILL"
75 PRINT =PRIHT "2) ENGLISH TO ";L««j"
UOCABULARY DRILL"
80 PRINT ^ PRINT "3) ";LAt4G$;" TO ENGLISH
TRA^ISLATOR"
^ PRINT :pRINT "4) ENGLISH TO "iLANG$;"
TRftHSLATOR"
90 PRINT ^PRINT "ENTER HJMBER OF DESIRED
PROGRm" ;■■ INPUT CHOICE ^ IF CHCiICE>4 THEN
GOTO 90
95 GOTO CHOICE«100
100 REM LAH:UrtGE TO ENGLISH DRILL
110 PRINT =PRINT ^F-RINT "HOW MANY WOR.DS"
; : INPUT N ■■ COUNT=e ■■ SCORERS
120 ? "{CLEAR}":? "TRAf-tSLATE THE FOLLOHI
HG tJORDS INTO EhiXISH": PRINT
125 GOSUe 500
130 IF CUUNT=N THEN GQiUB 600
135 IF COUtlT=H THEN IJJTO 198
140 PRINT m<m>
Julv, 1982, Issue 26
COMPUTE!
143
150 INPUT TRANSLATE*.
160 IF TRANSLHTE$=EtCLISH$ THEH SCORE=SC
ORE+ 1 • CCiUHT=CCiLJHT+l ■■ PRIHI " OJO 135 RIGHT
iCCSlPECT"
170 IF TRftHSLATE$=EHGLISHI- T1€H GOTO 125
130 IF TRANSLATE$<>EH:LI3H$ THEN DJUHT=C
0UKT+1= PRINT "{UP>ai RIGHT} WRONG! IT'S
";ENGLISH$:Gi]TO 125
200 REM EWGLISH TO LAMJUAGE DRILL
210 PRINT :PRINT =PRINT "HOW MANY 140RDS"
j-I^PUT N^COUHT=0^SCOftE=8
220 ? "{CLEAR}" ^? "TRANiSLATE THE FOLLOWI
HG WORDS IHTO "jLf*C$ = PRINT
225 GOSUB 500
230 IF COUNT=N THEN GOSLB 600
235 IF COUNT=N THEN GOTO 280
24€i F-RIHT EH:LISH$.
250 UPUT TRANSLATE*..
260 IF TRANSLATE$=WOFIJ-* T^€N S!::ORE=SCCiR:E
+1:C0UNT=C0UNT+ SPRINT "iUF'Jae RIGHT5C0
(3?ECT "
270 IF TRAt^tBLATEt-l'iORD* TFCH GOTO 225
■280 IF TRAt-<3LHTE$<>l-tORD$ THEN LaUNT=COll^
T+l^ PRINT "{UP>ill RIGHT; [■iRONG! IT'S "jW
ORD$:GOTO 225
300 ? -CCLEAR}": PRINT U^Oj " TO ENGLISH
TRANSLATOR" ^F1^:INT ^PRUfT "ENTER ";LANGf
;" WORD"
310 ? -INPUT TRANSLATEf
320 READ ENGLISH*. WORDt-
330 IF HjRD$=TRA^•^SLATE•| Ti€N PRINT "{LP>
■C15 RIGHT}"j:pF'INT ENGLISH*-^ RESTORE ^GOT
0 410
348 IF ENGLI:SH$<>TRAN:5LATE$ T^€N GOTO 32
0
480 ? "iCLEAR}": PRINT "EhGLISH TO ".;LAtC
$;" TRANSLATOR"^ PRINT ^PR:INT "ENTER BU.
ISH IJORD"
410 ? ^NPUT TRANSLATE*
420 F£AD ENGLISH*. WOF;D$
430 IF EfCLI:5H*=TRANSLATE$ THEH PRIt-H "i
UP>{15 right:;-";-- PRINT LW.D* ^ RESTORE ^QJT
0 410
440 IF WCS<D*<>TRANSLhTE* Th€N fflTO 420
5^ RBi RANDOM WJRD SUBROUTINE
510 X=(l+Ihrr(RNO( 1)125))
520 RESTORE
530 FOR ri=l TO X^READ ENGL ISH* .WORD*
540 HE>iT n
550 RETURN
600 REM SCORE SUBRQUTU£
610 PRINT ^PRINT "OUT i3F ";N;" UOCABULAR
■■■' WORDS I'OU HhIJE CORRECTLY TRANSLATED
i> -QruRE ■ " "
620 PRINT =PRINT "YOUR :5C0RE IS ";INT(SC
ORE-;tt(ie0/N));" PER: CE[(T"
630 PRINT ^PRINT "Q3 fti^AIH (Y OR N)".: aH
PUT Q*aF Q*="Y" THEH RETURN
640 IF Q*="N" THEN EhO
1000 DATA !D^t.. UN. TWO. DEUX. THR'.EE. TROIS. FO
UR. QUATRE. RED.. KiiJGE. BLLE. BLEU. GREEN. i.£RT
. m\, HOMME . CHILD. EbFANT
1010 DATA HAT. C^t^PEAU. PENCIL. CRAYON. HAM.
J^ON. EGG. OEUF. CITY. UILLE. COUNTRY. PAYS.
OF. DE. UNDER . iSDJS . tluHDAY. LU-^DI
1020 DATA TUESDAY . I'ttRD I . WEDNESDA'-i' . t'ERCRE
DI . :SATURDA'-i' . SAMEDI . SUf OAY . DIMANCHE. YES. 0
ULt«.f™.OLD..AtCIEN ©
FORTH programmers:
COMPUTE! 8
looking for screer^s
or^d oppliootions
articles,
A
PROUDLY presents: AFFORDABLE
ATARI®
SOFTWARE
RNDRQID RTTflCK
FIOHT YQUH UAI THROUGH LZVE15 OF
DEJlDLt UiaaOID OUAHOS TO SkVE THE
RUNAWAY NUCLEAfl HEACTQB, THEH THlf
T3 3AVE lOUSSELPt
AAARRdQGg-
A ?A3I. FSANTIC CHASE ABOUND THE
SCREES IRYIK; to CATCH SOKE CRAZY
CREATURES. IF YOU CATCR THE
■•SUPER-AAAHFUiGflCI*. YOU'LL GET A
SUPER BONUS. BUT DON'T GET POISONED!
5TflRBR5E flSSFlULT
HOU LONG CAN YOU PflOTEET YOUR
STAHBASE PROII IRE ATrACXINC ALIEN
iHMADAt EACH HIT WEAKENS YOUH FORCE
PIEUl RINGS AND K0¥ THEY'RE ATTACKINO
FOB Itt CASSSTIg OE 24S DISK
7i^'e iS^J?'„?"S? SBAPrflCS. ONLY 118.95 EACH
PLEASE AIID tJ.OO PES OBDER FOR SHIPPING.
INTRODUCTORY OPPER-
nj^rScR^ci;^,^*^^ Pretielland Software
zoos A WHITTAKER RD.
YPSIL AMTI, MII.48197
®
144
COMPUTE!
July, 1982, Issue 26
A map uj the significant machine language roulincs in
the VIC Super Expander. You can translate these
hexadecimal numbers into decimal, then SYS to them and
watch the effects.
VIC Super
Expander
Memory Map
Chuan Chee
St, Catharines, Canada
General Input/Output Routines
AOOO-AOOl Vector: RKSK T ($A()41)
A022-A003 Vector: N.MI (SA()77)
A004-A008 ROM identification ('aOCBM')
A009-A010 Tabic: i'limnon kc\' niitnbers
AOl 1-A043 Table: iiiiiiaUurulion kcytlL'Tiiiiiions
A044-A076 RESET routine
A077-A08A N.MI routine
A08B-AOBE Parse KEY (get parameters and chei k svniax)
A0BF-A131 ni.splayall function key dcdnitions
A n 0- A lie I'rini ■" + rhrS(;^■l )' and an opiional ' + "
A 1 1 D- A 13 1 IVint ■" + chr3( 1 3)' and an optional ' + '
A132-A135 Table: ASCII string for oiiipul ('key' backwards)
A136-A13F Table: ASCII siring foroiiipiit ('° + chrS(13)'
backwards)
A140-A149 Table: ASCII string for (MitinnC° + cbr$(34)'
backwarcls)
A14A-A17A Delete current lutictioii kev siring (key number
in ,X)
A17B-A1B0 I user I sli inginio function key dednition area
AlBl-AlBE Locate (unction key definition (key luiniberin
.\. reliun index ni .\)
A1BF-A213 Table: new BASIC keywords in ASCII form
A2 I4-A237 Table: vectors corresponding to new BASK ^
tokens (SCX: to SDD)
A238-A2A I Iniiiali/e kenial vectors, l/( ), RAM
A2A2-A2C1 Table: keniai ve< lors (I.,l I)
A2C2-A2C7 Warm slart roiil ine
A2C8-A3 1 7 Oui [)ui a character to de\ ice 3 (cliar in .A)
A3 1 8-A336 End unisic mode
A337-A365 Inu-i piet kexbnard matrix in[)ui
A366-A369 Table: kcvboard mat rix code lor luncnon keys
A36A-A37 1 Table: conversion pattern lor fuiicfion kevs
A372-A394 IRQ routine
A395-A3A5 I n]ni! a cbar trom any device (dev ice number
in.S<lil)
A3A6-A3B3 ()nl|uii a chai' loanv device {cbar in ..A.de^itf
ntun iiiS'J,-\l
A3B4-A3F1 Inptil eacbcbai' from keyljoardbiilTer
A3B4- A3E7 llandlcRUN" kev
A3E8-A3F1 Handle RETURN' key
A3F2-A3FC Input from device <)
A3FD-A406 I'l iiit an error message in GRAPH IC 1) mode
(i-ifor lokeu in .A)
A407-A4B9 Lexically analv.se BASIC, source line (translate
to lokeiis)
A4BA-A503 Print BASK: tokens in ASCI I form
A504-A529 Start new BASICstalement
A5I5- A523 Handle new U)kens($CC to $D6)
A52A-A58A Ci-i andevalualean ex])ression
A558- A58A I land le new I unction lokens($I)7 tuSDD)
A58B-A596 Table: BASIC vectors for RAM
A597-A5A4 Clliange BASK: vectors during RESET
Music Routines
A5A5-A5D0 Save ciureni sound table (atldiess of table in
.X..Vj
A5D1-A601 IRQ music driver
A602-A625 Table: conversion for note index to frecjttency
A626-A6E5 liiu-rpiei imisicm()<lecliaraciers(ciiar it) .A)
A629-A643 Execule'O'command, default .S
A644-A65D Execute " T ' command, default (t
A65E-A674 Execute's' command. default 4
A675-Afi86 ExecmeV'coiiunand, default 7
A687-A693 Execuie R' comitiauti
A694-A69B Execine 'P'ronmiand
A69C-A6A7 Execute 'Q' contniand
AGA8- Pla\' new note (note index in .Y)
A6AB-A6B3 Sa\ e new sound table wheti previous note
finisbes
A6B4-A6B9 Conunon relut ii rnutine
A6BA-A6CD Play notes 'A" lo V,'
A6CE-A6DA F.xeculc'#' command
A6DB-A6E5 Execute 'S' command
A6E6-A6EC Table: conversion loi [loies to juiie index
A6ED-A6EF Table: t cnnt'ision for oclave lit iiase iiolc index
A6F0-A6F9 Table: ((>ii\ersion for lempo lodiuaiioii (jiffies)
Parsing New Command Routines
A6FA- Look for and evalua(e first I -bMe.md nvn2-l>\lr
parameters
A6FD- Look forand evaliiale lwo2-b\le paramelers
A700- Look for and evaluate one 2-bvle parameter
A714-A71B Sa\eone l-bvie paramelcr(paranictetin .,\.
ituU'x in .Y)
A71C- Look forand evaluale hvo 1 -b\ie paramelers
A71F-A72B Look forand eviilualeitne l-bvte parameter
A72C-A73F Parse GRAPHIC (gel paranietei sand cbeck
svntax)
A740-A762 Parse C:iRCLE
A763-A7A4 Parse DRAW
A7A5-A7BC Parse POIM
A7BD- Parse COLOR
A7C8-A7CE (io lo execule commands aftei- |)arsiiig
A7CF-A7D8 Parse RECilON
A7D9-A7DC Parse ,St;NC;i.R
A7DD-A7E9 Parse SOUND
A7EA-A809 Parse CHAR
A80A-A810 Parse P.^IM
VIC-20-
VIC-20'
WE SELL FUN!™
CRAVKROBBKRS $13.95
Introducing Ihc firsl GRAPHIC
ADVENTURE ever available on Ihe
VIC-20! Willi rciilislic audio-visual
cffccls, you explore an old deserted
graveyard and actually sec the perils
that lie beyond.
NIGHT RIDER
High speed night
simulator.
sn,9s
driving
TREASURES
OFTHE BAT CAVE S19.95
Battle the vampire bats as you
search their cave for gold bullion.
Fast, real time action will keep you
playing for hours. Of course, you
are in a different cave every time
you play.
COSMIC DEBRIS S14.95
This highly addictive arcade type
game will keep you battling the
aliens for days.
Send for Jree calaloe.
^ II prtmrann fit in the standard I7C memory, and ctin be controlled from Ihe ketfyoatd.
All pru&rami on cassette mpe-
Orderi/in— Please add St. 50 prntaee and handlinf; per order.
PA resittem-; please udd rt*B aales ta.x.
VICTORY SOFTWARE INC.
20n-A S. J. Rosidl Circle. KIkins P«rk. PA 19(17
VIC-20® (2.5)576.562..
STREET SWEEPER.S $14.95
Gobble up all of the dots in tlic
maze before the en.suing nemesis
gets yoti. The maze is different
every time, and if you succeed in
getting all the dots, you get progres-
sively harder mazes to complete as
your skills increase. Docs this sound
like Pac Man? it isn't! Highly rec-
ommended and exlremcly addicting.
VIC-20®
NEW VIC-20 AND PET PRODUCTS
^--^COMMUNICATION CARTRIDGE -''
Makes VIC into tjumb terminal with selectable
parameters.
Model MW-300 49.95
*»<*- V-DATA BASE CASSETTE^**
Allows user do input mail lists, antd mini
inventories.
Model MW-301 29.95
^'>«8 BIT DIGITAL TO ANALOG CONVERTER
AND 8 CHANNEL ANALOG TO DIGITAL
CONVERTER''''''
Allows your VIC or PET to output analog signals.
Plugs into your parallel users port. Has capability
far 8 channel analog to digital conversion.
Moije! MW-304p PET 139.95
Model MW-304V VIC 129.95
MICRO WORLD ELECTRONIX INC.
6340 W. Mississippi Ave.
Lakewood, Colorado 80226 C303] 934-1 973
WUNDERWARE.
PRESENTS
GAMES FOR
YOUR VIC-20
These gomes and many more! SerxJ 5Cc (refundable with order] (or
ca'olog and free progTam listing
THEMADPAIHTE9
This game is a nnie unique
arxJ a loi of fun. Vou ccxiiTrol
a poirT txu^. movng rt
orcMX'd a catortui more,
vcxif ict) IS to poipl the eritiro
rr^re Tliis is rxji os easy as
It Kjufxis. becose «ri ii^e
maze wiThi you are two vora
cious Braile Biiers [they love
paint bfuslies] CJccaiiono-iv
you Will recetve a visii itom
an IfTvrsibie SlOmper wtxj
leaves footponts in you fresh
pant. ReCfuiie&jovs'ick
$9.95
SPACE RESCUE!
fi/i lotces ixjve ifopped
tiTfEe ct vOLff men deep in
ttw perilous depths of the
dreoded Dfomedorv Gov-
erns on the piQnel ot Kom-El
vqu car rescue rtiem. but
ttw tunnel to ttw lower
chomtxif IS nanow ond full
oi fxj2Qt<js A stf^gle ptovef
game against turie. StKK:e
r?escue keeps the top icofe
of tie day on flie scieen Re-
quires loyslick,
$9.95
Price includes Postage St Handling.
Foreign orders and COD's: Please add 53 00
Calolog is included with order,
Piice5 ore subject lo chiange without notice.
Send check or money order to;
SNAKE!
A tasi and fur act:ior game
tor ore player voute o big
snake foamirvg oroond ft%&
screen. Mice. rot?t?its, eggs
orx3 leet oopeor ot random
Vour missior in life is to btfe
these torgets, Vou have to
be Quicii - the torgeu don r
stay 'or ^or>Q. Tt\e moir^ p(ob-
fem IS: yOu always se&rri to
tie runnirig; mio tt>e wall or
into voursell {tt^ longer you
play, tt^ longei. and horder
to avo*d your laiil' Snakei
Keeps high score and re-
quires opystick
$9.9S
pnwundefware
kiiiJ P.O. BOX 1287. JACKSONVILLE. OR 97SiQ
VIC-20 IS a tegislered Irodemark ol Commodore Business Machines
VIC - ao
Assembler
Editor u»cd co crcttv and update the AiMMbly l«nqijia9» Goufce-
proqr*^ liDfAry, it ayntai-oheckK cjch itAtn^nc as, it ti cr^ieretl,
Jllcwini; anly valid Bvn«3ioni.c8 and adiittMUnq Dodcj. tienu options «re
CrcBter Peine, Load, Hfl&Tm, Inatrt, Ct^ai^q«, And Sdvc,
ASSEMBLER Inputs Hojccp-prograt s^gaenc* crMted vnh The Iditor.
[r li«c« ti^t origLHAl lource «s wbII sb the gtn«f ted PArt)ln« jAn^uaqe
in heiadecin#l ar decLul^ «nd optionally pcoduces ajchirf Itr^guagc
l&ad aeqcrncE f^r The Ludrr. Pclncc'r output is Bupporttd.
LOADER The Loader input* th* jD*d BtgnKhtt iicm the iibr*ry
uttiXtd ty The ABBe«blp[. The r^chlne Jftnqut^c pioqimt 1* POFEd into
nevDiy inri &KS1C'* tcp— oi-iiie»oiy pOlntrc a*y be autoaac;, cml ly re^et to
a. value ±j»citlf& in tht BOurc« pro^cw. the ]6ddvi: B«y be easily
ircoipotated into Anathtr SAStC piaqtm ct it fefty be run ttancl~alone
and v:ll SYS to the ent[y addiecB t^citi^d in the Bcurcc ptcqtt^.
BIQMIFICAhiT FEATURES
The ABKPsbler can dES^nblt- prcgr*' se^feentB flf up to 99 stateaencE
Ofi the SJT vrC-iO and several hundced 0t4t«|tiier^C£ on iaiqei syatens. It
can assenblc an unliBired nunbet o( such flegn-enta in Bequence, creatirg
a iMd flc^renc fur each. It ib neceaaary only to include an EQU tci
every ret er ence-d latel vhioh occura outalde the aegnent^ Thene is r.o
liffit to th* nuw&er of UbeJ« u»»d D( (eferenced, and labelE way be of
any length.
The BYT pseudo-op -say deflr^e luteal and hex atrlnqa o( any length
AB well as deciaa; Jat* and tddmi ccnitint* in hig^-low fotnat.
Opeiand fieldi may include conple-x al7eDfAlc eipreaBion& utilising
the * - ' / 1 uriteger and ftactiorul powers aupportedJj ( (logical
A!tr>} I 1 iloqical ORi operatorB, and any nuxiber af tervs ir, CDtcibir^ationE
of decinal. heKadef iItaI , ayabolic address and )ltefa] forofts^ Kegative
Rurtfiefs generate twoB copiplewent valued.
Fverything runt fatt, la eaty to uae, pleMint to look at, and
does ]uit wl.dt yog mpect it to.
*J4.9'S • U.OO poBtaqe ( handling. vjSA/KC accepted i»iih il.OO service
charge and inclusion ci af ct . I and expiration diite. Send payibenc ic
French SilJc, P.r^Boji 20"', Canfton ralia HH, 5i0O9,
VIC-2D la a re'^iateied trademark of CoHnodoEC Busineii machines.
H6
COMPUTEi
July. W82, Issue 26
A811-A817 Parse RPOr
A818-A81B Parse RPEN
A81C-A81F Parse RSND
A820-A823 P;irsc RCOL
A824-A827 P;irsfR<;R
A828-A842 P:irse ROOT
A843-A846 Paisc RJOY
A847-A84E Look for first I -byte parameter
A84F-A866 Indircci jiiiilp lo execute new com mantis fpoinloi'
to parainelcisa\e area in .X,.\', coiiniiancl
index in .A)
A867-A878 Table: vector to execute new commands (H)
A879-A88A Table: \eciorio execute new commands (L)
Execute New Command Routines
A88B-AA22 Kxccnte (;RAPHK:
A8AB- A94E Handle tiRAPH tC 1 ,2,3 if previous was 0.
A8D4-A942 Transfer BASIC' program to abo\e
S2()(K) and execute C;LR
A943-A94E Make screen at $ I KOO and character set
at SI ()()()
A94F-A9AB I landle GRAPI 1 K: 4
A967-A9AB Transfer BASIC program down to old
location and execute CI.R
A9At:- A'JBT IIaiKlleC;RAPIIIC;(Hf previous was 1,2.3
A9B8- AA22 Sei up proper GRAPH IC; sci cen
AA23-AA28 Kxecnte RCiR
AA29-AA6A Execute COLOR
AA6B-AA84 Execute REC:K)N
AA85-AA8B Execute R(:0[,
AA8C-AAE6 Execute RDOI"
AAE7-AAF1 Execute POINT
AAF2-AB12 Execnie SCNCLR
AB13-AB22 Execute DRAW (c TO x.y ...)
AB23-AB34 Execute DRAW (cx.yTO x,y ...)
AB35-AB54 Execute SOLND
AB55-AB69 Execute R.SND
AB6A-AB76 Execute RPOT
AB77-AB7D Execute RPEN
AB7E- Plot a sitigle [)oint from parameter save area
AB86-ABE4 I'lot a single point froni beginning .seated X.Y
cooidinates
ABES- Set itp pointers to character and cohun meniorx
ABFA-ACOA Set up ]>ointer lo colour memory
ACOB- Draw a liiu' with a new si art ing coordinate
ACl 1-AC92 Draw a line starting from previous toordinate
(usinga version of Bresenham'sDD.A algorithm)
AC93-AD12 Execute CIRCLE (using principal oi'digital
differential analyser (DDA))
AD 13- Convert starting angle to radians
AD19-AD22 Divide FAC#1 by 1(1
AD23- C^alctilate new scaled \and \' coordinate on loctts
AD39-AD6B Calculate unit offset * scaled radius
AD6C-ADDE Execute PAIXT
ADDF- Check for po.ssibie new lower bound pivot
coordinate
ADE8-AE01 Sa\e pi\olco(>i'dinate
AE02-AE0B CJheck for possible new uppei boLind pi\()l
coordinate
AEOC-
AEOF-AEIE
AEIF-AE23
AE24-AE3B
AE3C-AE44
AE45-AE51
AE52-AE56
AE57-AED9
AEDA-AF13
AF14-AF33
AF34-
AF39-AF3E
AF3F-AF47
AF48-AF75
AF76-AFB0
AFBl-AFBA
AFBB-AFCE
AFCr-AFE2
AFE3-AFE5
AFE6-AFE6
AFE7-AFEE
AFEF-AFF6
AFF7-AFFA
AFFB-AFFE
AFFF-AFFF
Note:
(H):
(L):
Vector:
Pointer:
Index:
Check if able to PAINT a coordinate
C";heck if able to PAI NT a coordinate (X,Y
in .A,.Y)
Move beginningscaled X,Y coordinate tt) .A..Y
( Jieck ilcoortlitiale has been alreadv plotted on
.Move begiimingscaled X coordinate to the right
Move beginning.scaled X coordinate 2 to the left
Flag TORMULA TOO COMPLEX' error
message
Execute CHAR
Execttte RjOV
Set tip correct VIC chip screen registers
Save number of coordinates and colotir register
.Save colour legister
Copy beginning from endingscaled X.N'
coordinate
Scale X and Y cooixlinales
Scale X or Y coordinate lo the range (I to 159
(.X = .A*coorditlale*2/2.^^i) (number of columns
or rows in .A)
Table: vectoi' to map V coordinaie lo lolour
memor\ (L)
Table: vector to map X coordinate to character
memory (L)
Table: vector to map X coordinaie to character
!nemor\' (II)
Table: bit set ibi coloui inemoi)
(not used -contains SOD)
Table: bit mask for high res mode
Table: bit mask for mutticolour mode
Table: bytes to plot in mullicoloui mode
Table: conversion (actor for \' I(U hi)) sireen
registers
(not iisecl — contains SA A)
high byteof a two-byte address
loiv byte of a ivvo-bytc address
two-byte address used for indirection of
execution
nv()-l)vteaddiess for data
one-bvte of fset f or a table
General RAM Area
0024 Ntiint)eroi coordinates
0024 Flag: cofotir register mode ($FE = nmltico!our.
S()0 = highies)'
0024-0025 Pointer: New start olvarialiles/ started BASIC
mcmcM")
0026 Temp area for building VICclii]! registers/ lor
bu ilding character bvte / for sa\'ing start ol
BASlc'd.)
Current Coordinates
0062 Endingscaled X coordinate (I) to 1 59)
0063 Beginning scaled X coordinate (0 to 1 59)
0064 Scaled X difference (absolute value)
0065 Ending scafed \' coordinate ((1 to 1 59)
0066 Begiiuiing scaled Y coordinate ((t to 1 59)
0067 Scaled Y difference (absolute \alue- 1)
World's Most Cost Effective Development System
i£
MODI
ptoo
•
•
■ UtN
MOOE
II
• LOCK
li
i^iiriifiiiiiiiiilllll
•Type your programs directly
from your Commodore VIC-20
keyboard into the built-in
4 kilobyte ROM emulator
• Jumper direct to target
ROM socket
•Test programs in circuit
• Burn them direct to EPROM
with built-in EPROM pro-
grammer and power supply
• Burns & runs EPROMS
for the Commodore VIG-20, too
•Software on EPROM included
• Comprehensive 25 page manual
• Fits EXP PORT or SUPER EXP
Leaves user PORT free
PROMQUEEN CARTRIDGE COMPLETE ONLY $169.50
manual available separately for $20.00 credited on cartridge purchase
Jumper Gable, 2 ft: $1 8.50 wilhi cartridge; 2732A EPROMS SI 2.50 eacfi with cartridge
Gloucester Computer Bus Co.
6 Brooks Rd., Gloucester, MA 01930
617-283-7719
Shipping charges for all items extra, (Vlass. residents add 5% tax.
VISA AND MASTERCARD ACCEPTED
TAYLORMAOE SOFTWARE • TAYLORIVIADE
1or the COMMODORE VIC-20
AEROBICS POINTS
CALCULATOR
^ Now you can monilor your Illness program.
j; Enter your lime and (distance) lo learn yourl
exaci aerobics points earned and caloriesi
iised For distance activities learn your
yards/mm . M.P.H.. and min/mile. Savel
^ your weekly, monlhly. and year aerobicsl
^ points tolais on the tape daiasselte. See al
bar grapti on the screen ol your average]
weekly aerobics points lor each month.
Easy to use. all selections are made Irom a|
menu by a single keystroke.
Two programs come on one tape cassette;
One for Ihe basic VIC-20 (3583 bytes) will
calculate aerobics points for running, wafk-
ing. cycling and swimming. The second
program 'equires 3K memory expansion,
and will also calculate aerobics points for
25 additional activities
Cassette and manual... U.S. SZ4.95
(U S ana Canada shipping/tiandimg Si. 50)
(Foreign shippmg.'handliung S3.00!
TAYLORMADE SOFTWARE
COMMODORE DEALER
|VIC-mendous[
Software
Clowns
Air Targets
Depth Charge
Easy Hi-Res.
Guided Missile
3 Nuclear Attack
Robots
i
P.O Box 5574 I
Lincoln, NE 68505
(402) 464-9051
MSA-
Tank Invader
Break- A way
Dungeon X
Easy Multi-Color
Gunner
Replace
Tank Battle
rt
: Each For Only *9.95 |
H Chomper
c Brain Warp. . , .
Music Machine
CW Trainer. . . .
»12.95
n2.95g
*12.95E
U5.95
I
fviC 1^ a irademark ot ComrTKXiore Bjsiress Machir>es inc |
TAVLORMAOE SOFTWARE
TAYLORIVIADE
RANDOM ACCESS
COMPUTERS
120 Benning Drive
P.O. Box 1453
Dwtin, Florida 32541
Ph: 904-837-7201
COMMODORE DEALER
MIGHTY "V"
TO THE
RESCUE
VIC 20"
BUSINESS AND HOME SOFTWARE
That'll KNOCK your Mainframe OUT!!
BY TSASA
Now available on cassettes -
THE MORTGAGE CALCULATOR C
THE GASOLINE UN-GUZZLER C
THE BILLING SOLVER
THE CLIENT TICKLER CP
THE TAPE GENI C P
THE ACCOUNTANT C P
THE BAR CHART C P
CASH FLOW C
THE DEPREDATOR C
BUSINESS INVENTORY CP
THE BIDDER C
THE TEIUPERATURE CONVERTER C
FIND THE WORDS CP
DEAR DIARY C
PROFIT SHARING PLAN C
LEASE BUY' C
RATIOS C .
PRESENT VALUE C
THESYNDICATORC
MOTHERS RECIPES CP
THE TAPE WORM C .
THE CLUB LISTER C
AT HOME INVENTORY C
UTILITY BILL SOLVER C
VICKY-CALCC
BIRTHDAY GUESSERC
THE METRIC BRAIN C
ROLL DA DICE C
THE TICKER TAPE C
THE SUPER BROKER C
THE MORTGAGE COMPARER C
THE RULE OF 78 C
MATH-A-MAGICIANC
HOME BUDGET C
IT'S TRAVEL TIME C
YOUR MEDICAL RECORDS C P
THE INVESTMENT ANALYST C
THE PHONE DIRECTORY CP
THE AMORTIZERP
THE CHECKBOOK BOOKY C P
IHE INCOME &EXPENSERCP
THE LOAN REPAYERC , , .
MY CREDIT CARDS CP
GRADE MY KIDS CP
NET WORTH STATEMENT CP
THE SAVINGS ACCOUNT MIZER C
CALENDAR MY APPOINTMENTS P
MIXED UP WORDS C
THEBUDGETERC
PRINT MY PROGRAM P
[j 1
i : 2
r: 3
[ : 4
■ 1 5
I 6
7
8
9
i 10
111
! .12
; :13
: 14
]15
' 16
17
18
;i9
20
21
22
: 23
24
25
26
27
28
29
30
31
32
33
34
; 35
35
37
38
39
40'
4!
42
43
44
145
46
47
48
■IS
50
JUST RELEASED
51 JOGGERS LOGGER C
152 NUISMATICPHANATICC
53 SUPER SHOPPER CP
i54 PERT MY Vice
55 LINEAR REGRESS C
!56 STATISTIC SADISTICSC
57 TRACK MY WEIGHT C
58 LIGHTNING SORT C
59 GOLF SCORECARD C
50 ORDER TRACKER CP
' Copyright TSASA 1981
FflEE CATALOG
Specify CRT TV (C) or (P) Pnnter
Programs available direct Irom TSASA or al fine
Computer Dealers Nationwide
DEALER INQUIRIES WELCOME
S 8 95
S 8.95
S1995
519.95
S 9 95
S29.95
S 8 95
S13.95
SI 0.95
SI 8 95
514,95
S B95
510 95
S12 95
S18 95
514 95
S 8 95
S12 95
515 95
S12 95
512 95
513 95
512 95
S1295
S12.95
5 8.95
51095
512 95
S16.95
S12 95
S 8 95
S 9 95
514.95
512,95
S1095
514 95
512 95
S 9 95
£24 95
S1295
S14 95
S10.95
514 95
515 95
514 95
513 9S
516 95
S 3 95
515 95
S 3 95
511 95
51 2 95
512 95
516 95
516 95
515 95
S12.95
SI 2 95
511 95
518 95
Send ctieck or MO with SI ,50
Postage & Handling
COD add $1.50
TSASA
NAME
ADDRESS .
CITV
STATE _
ZIP.
[ I SEND FREE CATALOG
Mad to: 2ChipleyRLjn
West Berlin, NJ 08091
Telephone (609)346-3063
we
COMPUTE!
July, 1982. Issue 26
For Scaling Coordinates
0069 Miilli|>lu;in(l- I
006A 1 fi-liit iHotkici
006B-006C l(l-l>iiiiuilii])li(.-r
For DRAW
0069 Srak-dX unit (liicTi ion- I
006A Sciik-d V imii cliteciton
006B-006C \'iimhci()fs(;ik-(l Y iinils Icll In plot hcfoic tu-xl
staled \ uiiil (cnuiil up)
006D-006E Nimihi'i ol'iJoiiii.s k-l't lo pkii ((oiiiii up)
For PAINT
0069 Index: pivdi (oo!(itn:itt'.ss;i\ojnea
For CHAR
0069 (:urrfiilrmv{0l() 19)
006A (:uiri.'nUoUitim((ll(i HI)
006B Li'iif^iholsti'lii^
OO6C-006D P(iiiiter:siiiii^ I. nation
General RAM Area
009B Index: iHninin^ofciiirciil limtliou key
(k'liiiilion
009B-009C Pointer: i uin-iil i liar set iiddrcss / b\[v in rhar
si'l .' pnsiiion in scifi'ii iiii'moiA/' (k-sliiiatioii ol
l)vlco( HA.S[(;]iiograiti loiraiisiei
009D Index: cud ol ( uik I ion kc'\ definition area
009E (Utrient luiKtior) key nintibcr/ lens^tliof ciineiit
linuiioii ke\ sliitiiT
009F I.ciigtli ol (III It'll I fu nil ion kev ^l^inl^ (coin it
down)
009E-009F Poinier: l)ytein colour nieinory
OOAC-OOAD Pointer: current byte {I uiu lion key delinition.
t;i])c, scrollitif^)
00C3 Flag: D^liavcn aiisrcncd BASIC: piogiam to a
new loc alion
00C3-00C4 Pointer: kcinalsel np/cLnrenl in nsit table/
paranietersavc arc:i (S(t8!K:)
OOFB-OOFC Pointer: lopol'BASK; nienioi \ (usnalK sanieas
S02H-l-|(t28'))
For Key
028F-0290
02A1
02A2
02A3
02A4
For Music
02A5
02Afi
02A7
02A8
02A9
02AA
02AB
02AC
Vector: interpret ke\'boai(l input (SA337)
Niniiberol bytes taken b\Su])cr Kxpander in
hii^li IncllH)|■^■(SK8)
Niniibeiiil Characters in Itnit lion kev del'initioii
Index: cm rem byte ol' function keystiinj;
Lcnglb ()( fiinctioii key string (annum! left to
otitpttt)
l'tc\ionMhara(ter in music mode
Music i]iode (S8() = on)
Screen ci ho (SfjO = i m, SOO = ol I)
Current \i)ic c (sound reg;istcr - I )
Ciirient note index
(iiii'ieiil dnralioii (jiHie.s)
tairrcnt suntid aniplluidc (vohniu; * 2)
(airreiil octave (base note index)
02AD \'oicc 1 iiotcin<lc'X| + S8())
02AE Voice 1 duration count down (jirfies)
02 AF \'oice 2 noie index ( + SHO)
02B0 \di( e 2 duration coinit down ((llfics)
02B 1 Voice :i nole index ( + $,S())
02B2 N'oice 3 duration coiim down (jiffies)
02B3 \'oice4 note index ( + $80)
02B4 Voiccl duration count down (jiffies)
02B5-02BF (forcxjxinsioii)
For Execution Of New Commands
O2CO-02C2 Jump table: cxecnie new i()iniiiands(IMP$A84F)
02C3
02C4
02C5
02C6
02C7
02C8
02C9
02CA
(anient \'1(: cliip left inaigin register
CAirrenl Vl( '. chip lop inai i^in register
(anient \'K! chip niniibcroi columns register
(Lauren! \'l( Chip ninnber «jf rows register
Clini ent row of cursor
CnneniCRAI'IIICmode
(lor expansion)
Clurrent colour t cgistei ])aranieler (while
plotting)
02CB (ainent screen coloitr
02CC C^urrcnl bordercokmr
02CD tairrent character colour
02CE Caineni auxiliar\ coioni
02CF Index: parameter save area (while ploiiing)
02D0 Catrrent character set address page
02D1 L'snalcbaracter set address page iSSO)
02D2-02D3 Pointer: old liniil o) BASK : metnorv
02D4 Old screen nieniorv j)age
02D5 Last scaled \coordinaie(0 to I")*))
02D6 Last scaled "i' coordinate (0 to 1 59)
02D7 Flag: S(l(t = DRAW cx.y f O, $(11= DRAW c I (> /
current iiuiuberol on! ol range coordinates
($1)11 = within range)
02D8 Old number of out of range coordinates
(SOO = within range)
02D9 Index: paranieiei sa\carea (while getting
p.uamelers)
02DA-02FF liorexpansion)
Operating System Vectors
0300-0301 Vector: error message (SA3FD)
0302-0303 Vector: bask: warm start (Sc:lS3)
0304-0305 Vector: lexicallyanalvseBASICsoiiKe
line (SA107)
0306-0307 Vector: print BASIC tokens in ASCI I
form (SA4BA)
0308-0309 Vector: start new BASIC staicineni (SA.'jOl)
030A-030B Vector: get and evaluate an expression (S Ar)2A)
0314-0315 Vector: IRQ ($A372)
0316-0317 Vector: BRK insiriiction (SA2C:2)
0318-0319 Vector: NMl (SFKAD)
031A-031B Vector: bask: OPKNstaktneni (SFIOA)
03IC-031D Vector: BASIC CI.OSK stalemenl (SI':MA)
031E-031F Vector: set input ($I''2C:7)
0320-0321 Vector: set out pit! (SF;^09)
0322-0323 Vector: restore I/O (SF:<F3)
0324-0325
0326-0327
0328-0329
032A-032B
032C-032D
032E-032F
0330-0331
0332-0333
0334-033B
Save Area
033C-03F8
For Circle
033C
0347-0348
0349-034A
034B-034C
034D-034E
034F-0353
0355-0359
Vector: iHj)tit a cli.iractcr (SA395)
Vector: cuKpm a cliar;<tter (SA3A6)
Vector: test S TOI' key (SF770)
Vector: BASK: CKT siaaniciu (SFlI-n)
Vector: :il)on I/O (SI'^KK)
Vector: user BkK insii uttion (SA2C2)
Vector: BASIC LOAD siaienient (SF549)
Vector: BASIC SAVE s(;ttenietu ($F685)
(f'(iic\pa:isii)n)
Save area: paraiiielcr jMSsing / ]>i\ni touitiiiuiiL's
(PAIN'I")
Index: \ ni 'S'
Old scaled X (.ociidiiiate on lotus
Old staled ^'tooicliiiaie on locus
New scaled X coordinaie on locus
New scaled ^' coni-dinaleon locus
l-loaiingpuiiil uiiil olTsel X coordinate
Floatingpoiiu unit olTsel V coordinate
Your VIC-20 Will Smile...
SUPERFONT
Design programmable characters on your VIC-20
with this easy-to-use program. Especially useful
when creating animalions, since you can edit (our
characters at once as a 2 x 2 block.
SAFARI
You are a photographer on an African Safari in this
great game. The jungle animals run past as you try to
snap Iheir pictures. An excellent example of how to
use large blocks of programmable characters on the
VIC to create animation effects.
QUIX
How good is your memory? QUIX presents patterns
of color and sound that gradually get longer and
harder to remember.
These three excellent programs are available on the
VIXEL #2 cassette for the standard 5K VIC-20 for
only $12.95 in the US and Canada. Foreign orders
add $3.50 for shipping. CA residents add 6% tax.
VISA and MasterCard welcome.
VIXEL IS a trademark ol The Code WorHs,
VIC-20 IS a trademark ot Commodore Business Mactiines.
TheCode Works
Box 550, Goleta, CA 93116 805/683-1585
TRANSFORM GRANDPA "PEr""
INTO A YOUNG VIBRANT "PET^""'BY UPGRADING
TO 4.0 BASIC
Socketed P.C. Board that will plug
into your ROM Sockets and accepts
Commodore's 24 Pin ROMS 4.0
BASIC Interpreters (ROMS not
Included): When used with LC. Clip,
soldering is nninimal. Please check
nunnber of pins on your ROMS
before ordering.
RB-4 (for 28 Pin ROM "PET"") $49.95
RB-4 wilh I.e. Clip 69.95
RB-4A (for 24 Pin ROM "PET"") 49.95
RB-4A wilh I.e. Clip 69.95
Please include SI. 50 each for shipping and handling.
California residents, please include 6% Sales Tax.
10% User Group Discount for Purchase of 5 or More Units.
Send S.A.S.E. For Free Catalog.
BETTER SOLUTIONS
505-589-1100
4605 RIPLEY STREET • EL PASO, TEXAS 79922
"PET" IS a trademark of
Commodore Business Machines, Inc-
e ]9S2 BETTER SOLUTIONS
ALL RIGHTS RESERVED
FINALLY, 1200 BAUD
At A Reasonable Price
$175 PET Terminal Emulator
$495 U.D.S. 212 Modem
$600 Our introductory Price
PET Terminal Emulator
• Choose from 3 terminals
• Up to 4800 baud
Universal Data Systems 212 LP
• 1200 baud modem
• call for modem only price
AMPLIFY, INC.
2325 Macbride
Iowa City, Iowa 52240
319-351-4775
150
COMPUTEI
July. 1982. issue 26
This concludes a three-part series on getting started in machine language.
Part III
Machine Language: First Steps
Jim Butterfield
Associate Editor
In the two previous episodes, our intrepid hero, F.
R. Vescent, has coded the following bar graph
program in machine language:
027A
A2
30
LDX
#$30
027C
AO
00
LDY
#$00
027E
E8
YLOOP
INX
02 7F
EO
3A
CPX
#$3A
0281
DO
02
BNE
SKIP
0283
A2
30
LDX
#$30
0285
8A
SKIP
TXA
0286
20
D2
FF
JSR
$FFD2
0289
C8
INY
028A
cc
00
03
CPY
$0300
028D
90
EF
BCC
YLOOP
028F
A9
OD
LDA
#$0D
0291
20
D2
FF
JSR
$FFD2
0294
60
RTS
After finishing the codingjob. he enters it into
memory using the machine language monitor like
this:
027A A2 30 AO 00 E8 EO 3A DO
0282 02 A2 30 8A 20 D2 FF C8
028A CC 00 03 90 EF A9 OD 20
0292 D2 FF 60
With the machine language program in place,
F. R. returns to BASIC and writes:
200 DATA 15,10,30,35,28,28,15,0
210 READ V:IFV = 0 GOTO 300
220 POKE768,V
230 SYS 634
270 GOTO210
300 END
The program runs properly, but the machine
language is in the first cassette buffer, and this
makes it hard to SAVE. F". R. uses the following
piece of trickery to make the ML coding more
tractable: He types:
FOR J = 634 TO 660:PRINT PEEK(J);:NEXT J
634 is the address of the start of the ML pro-
gram ($027A) and 660 is the address of the last
byte ($0294). So what F. R. is doing is writing a line
to cause the program to be dimiped, byte by byte,
to the screen. He will gel something like:
162 48 160 0 232 224 58...
There will be two spaces between each pair of
ntmibers. Now F. R. does some clever screen
editing. He places the cursor just before the 4 of
48, and presses the DEL key and the comma. Now
the two numbers read 162,48 ... and F. R. moves
the cursor ahead to just before the 1 60 and repeats
the sequence. Eventually, he gets a long line of
numbers willi commas between. He does not press
RETURN, but backs up to the beginning of the
line and types several Insert keys; now he has room
to enter the extra information " i 10 DATA". Now
he presses RETURN and the bytes of his machine
language ]jrogram are entered as part of a DATA
statement.
There's another line left over and he must
repeat the editing sequence to create a 1 20 DATy\
... line and complete the DA'IA recording of his
program. Now he tvpes in line 100:
100 FORJ = 634TO660:READM:POKEJ,M:NEXTJ
The whole |irogram should now read:
100 FORJ = 634TO660:READM:POKEJ,M:NEXTJ
110 DATA 162,48,160,0,232,224,58,208,2,162,48,138,
32,210,255,200,204,0
120 DATA 3,144,239,169,13,32,210,255
200 DATA 15,10,30,35,28,28,15,0
210 READ V:IFV = 0 GOTO 300
220 POKE768,V
230 SYS 634
270 GOTO 210
300 END
Now: whenever we say RUN, tiie machine
language program is POKEd into place (line 100)
before the main pr(jgram uses it. We may now
safely SAVE the BASIC program to tape or disk
without worrying about how to save the machine
language part. The B.\SIC program makes its own
machine language where it needs it.
Serious programmers will think of more
efficient ways to convert the program into easih'
SAVEable code. More advanced machine language
programmers will Find better ways than DATA
statements. But this is a start.
We've traced a machine language program
tlirough its conception, assembly, and implementa-
tion. It's not too hard a job, and there are aids to
July. 1982. Issue 26
COMPUTE!
151
help you along the way.
This example was picked because it presented
a faidv easy challenge. Even so, it look us three
iii.stallnienis to .sec il ihroiigh. The bigger jobs are
n(.)t much harder; most of the work was in the
housekeeping.
For beginners who have never followed the
whole process through, it's a worthwhile exercise.
Once you've seen the trick done, you can see how
todovourown. S
Use the card
in the back
of this magazine
toarderyour
COMPUTE! Books
VIC PET APPLE SOFTWARE
^C3unfVICS - lull icrrrn iuptr fiJphjci pickjtr fof The VIC, Addl M
\^ comrruindi to BASIC. Ptiw detailed pictutri ulin| 1SZ X MO points.
HI rei £ KuIliccIof gilphic rrodri of t*mc icictftf SwMc^ bflwrf^ Itut
«nd luphlcii tc'eefii i^nh function fceyt. S*wf/I(j»d piciuiei- lo/fion*
tlpe or d||.k. ftfQiiitv-% 3K or tK mpifldvr. Wllh « arrr* If' p c o|r imi t #n(j
u\*i'i. rrunml. Pricr ili; runu«l anty M.
VJC/FET V1C11 - lnlctiCli«» Camel Imrtuaie - Ptotum your own or
p l«V t^t 9 jamei i/tcludcd. Wiih 60* powr r fu i corTmandi . Eaty to
l#jcn. VIC irfiiton h«( (nlor jif^uircj 311 oi *K «^p4ndCf]. Corrv I ^ I <
with vi*f'i minuiil. Pftrt S35: minujl only HO.
VIC/FET riPIB - (hr uLfSK JUACMInE - Surrpf*!! ■*ay yrt lo cWTi>D»e.
Coi^duCl *nd plav fTViic^ Campt*ie mjjic conlfol o) not«i. r#ili,
«ol \fmf . ifptm, ttfnpo, «■( C , Wtp L 1 ci^ \n f lii rruchtnc tintuJi^ • Wl 1^
t *mpl* compoi iiion* 4ft(f ijirr'j rrunual, Pritr (25, mjnui I only JS.
VIC H] RES/MULT ICDLOK CXAPHICS UTIDTIES - Add irjphici to ViC BASfC.
Rrqui>c» no rilrj ircmoiv.. Plot. potnrii, linn ^fid hOKCf in tint
del*! I - 104 % 1S3 poinli. With lAmple profrann tnd ultf'% manuil.
PiPiC« nS; lYUnuAl ftnly 13.
PET TIWV P«tcil PLUS* - itiuclurrd Uniua|f ^rt^rnaiivf to BA5IC.
Wt 1 h Edi toi , CcfTfii let ind lnr»ipfei«f. All prOjrinminj com t fuci i
i\ippat%ed, W| I h usri'i ranual. Cpaphici <3f oort'g r ip h i c t vrrtioni.
FO' NEW/4, 0/»niZ. w/i( iphicif JJKl - dilk 15D, ^iiiciic J5S. W/0
|f iphi ct ! UK*1- diik JIS. C4iirt(r t*0. manu»l only HO.
^r^AppLE II [TlNASOFT PiIcbI - corrplft^ Paicil ricvfloptne'l^ t iyltpm with
^ Ednor, CcWBiltf, trifrpreler j<^d iupt-Tvitoi. All proiurrmint
cojiilrucTi and daii lyp^l itltari, chjr^ Mrrtf, poknt^r, intcfrr.
Hire*, Lort% »nd tntrhmt itn^uaf* intrrljrp. Wiih ijnvl( p/OBr*nl
*ftd ulrr'i nvnual. DuV 150; l^iik wiTh coorlrt* rnjch.n* [«4d)hlt
TOu'Cf todr SflS; rruniia I only t1D,
PET TINT BASIC CCMPIIEB - PioduCti Tfur 4S02 cod^. ■Suppo.M #11
Moattni poioi g;i»rjl<nn,. SubtVI ol iht lull PCF BA&lC. Cpmplln
liiTint DpUdnal wjlh 1bK vcnloFV lincluded). With uiff'i manuj I ■
For OID/N[W/<.0/BD3J »nd ftH-. Price *7S; m^nui r unty IS.
PET MACMINf lANauCI CUIOf - Nd» U i I ], ninth printinf Itttn th.-
hiddtii ta)»nti of you' Old, P<rw oi *.n (tom PIT/CBM. 30- loutlntl
lullv deijilfd. PfiC« S9 (in (o'fijft).
^T ABACUS - BFJutilully crafted Ctnon* abacui. Te^ach childfen hailci
^ of rrtilh or ui* m% lout^ly dKorJlion. Wirh t r*g 50* ot^ rninu* I
eiplainlnt ul«. Price- *14.q5 . lJ.nf> notlagt- I i<TITC~/o re i |r 1 .
iBfMinil!
mmnii
ABACUS SOFTWARE
P. O. Bo. 721 1
Grand Rapids. Michigsn 49510
B1B/ e41-5B10
Unlet* noied, pHttl are lar cit,|.|t^. Add li.pQ pg r d.ik ptcfctge,
Fo/eiin ofd*r» Idd IS. 00 per pjck^je or^TT.OO Tot m»nim"onlv. *ll
.ordef> rmit be pitpaid in US Do I t i n . VISA, K, ACCESS Eufocjrd.
TAis is the safety net you need to avoid losing hours of
programming time when a power failure or a keyboard
lockout strikes your Atari.
Atari Variable
Tabie Refreshi
And Program
Bacloip
Jon Harding
Rochester, NY
Writing new programs, especially long ones, usually
requires many hours of editing and typing which
can lead to two problems: (1) the variable name
table grows loo long and (2) ihe editing session
may be catastrophically terminated by a keyboard
lockup or power failure. Even commercial .software
ma\ have variable name tables which are larger
than necessary. And power failures occur only at
the worst possible time: after tvping in the 2ri2nd
line of that new game you're so anxious to try! The
following i-outine eliminates the first problem and
minimizes the Io.sses of the second.
Type in these two programs (but delete REMs
to conserve memory), SAVEing the first as
"WRKLOAD.SAV and LISTing the second as
"BAC;KUP.LST." The meaning of the e.xtensions
should be clear. These routines will become part of
yoiu- program, but can be deleted when you've
hnislred typing. Initiate a new program or add to
an existing program, already LOADed, by EN-
TERing "D:BAKUP.LST". After tvping and/or
editing five to ten lines, type 0.32000 <RE1 URN>.
The progiam in RAM is LISTed to the disk as
"WRK," the RAM area cleared, and "WRK' re-
EN TF.Red. Edit or add more code and tvpc
G.32000 again.
This time the old "WRK" is RENAMEd
"WRK. BAR," the program in RAM becomes
"WRK," and is reT'.NTERed. The next time, and
thereafter. "WRK. BAR" is deleted. "WRK" be-
comes "WRK. BAR," and the program in RAM
becomes "WRK" (and is re-ENTERed).
This procedme provides/fl//)fr-.so/; (mother-
152
COMPUTf!
July, 1982, Issue 26
daughter) backup and keeps the variable name table
as small as possible. When you finish a session, ivpe
G. 32000 once more to save tlie latest changes in
"WRK." When you start a new session just type
ENTER"D:\VRK" and you pick up where you left
off. If you use this rt)utine to back up otlier pro-
grams on your disk, be sure to save the latest version
by its proper name, e.g. "D:GASBILL.UTL." Vou
could also delete the "WRK" files before using the
routine on another program, but it's not necessary
since they will be replaced anywav.
The beauty of this routine is that it only takes
a short command to invoke and can't be started by
the program in RAM because of the STOP at 3 1 998,
The XIO... code is the special I/O connnand,
explained on page 29 of the Atari BASIC Refm'iirc
Matuial which allows you to access DOS utilities
without calling DOS, among other things.
Other Possibilities
More generally, this scheme suggests the possibility
of a flisk with man\ short utility roudnes which can
be SAVEd for use by themselves or LIS Ted for use
during program writing/editing. Examples might
include: listing (he disk directory lo the screen
(without calling DOS), printing the disk directory,
a screen viewing of a dumped machine language
program, and hex to decimal conversion,
A note of caution: if you write a program
which will reside in RAM with the program you're
working on. it wusi be complete within itscK. In
other words, when execution is completed, every-
thing defined must be undefined {variables, di-
mensions, arravs), all devices OPEN'ed must be
CLOSEd, and there musi be an END. ( Ihe CLR
command takes care of undefining anything
DlMensioned and clears all variables.) Ihe closing
stateinent ol such a loiitine should look like this:
lineno CLOSE #1 :C:LR:EXD.
Program 1.
32039 REM t^mt^^t^S^!^^t^tmM^tn
32040 ENTER "4i?K"
32041 REM U^m:m^Sm:li:^tv
■.'.■*J.--J.^'."J.-.'.-J.-J.J,-A-A",V>J.-A-,^
^ '■ '^ '■ '■ '■ ^' " v--V""r"V""i*-Y'-i'',"
Program 2.
31997 REM :^S^^S:StS1^:^:?t:¥::^:S:^t^$^t:^:^t^5¥:
3199R V "SHOULDN'T BE HERE!"^STOP
31999 REM tW '14RK..BhK' EkISTS. DELhTE I
It
32000 TRAP 32010 ^;>aO 33..^1.0.0/'t'RK..BHK"
:TRAP 4^00
32005 REM :^'IF 'H<IC EXISTS.. RENhME IT m
^; BftK ' -^•
32010 TFSP Si'ya© ■■ XIO 32 .. #1 .. u . 8 .. " D ^ WRK . m
K.Bftl<;"=TRAP 40000
32015 REM Jl^LIST PROGRAM TO DISK AS 'mC'
t
3201b REM *'RLN WRKLOAD.SAU' ERASES RAM
Arc RE-ENTERS '\m.'t
32*020 LIST "D = HR:K":RIH "DH-JRKLOAD.Sw.;"
32050 REM tmVi:mnMmZUUU:m:Wi
Use the cord
in the bock
ot this magazine
to order your
COMPUTE! Books
Superb tmv
^pjwrams
jot ymr^TbarV
Atari isa registered Irademark r ol Atari Inc
DOLLARS AND SENSE is a set ot inree crogiams aesigneo to intorm ana eaucaie One suucn
menu driven aiK totally user friendly
iRA oulpuls evpry year Irom vOuF present ag? 10 J9? 6^ yea'bVVea' Simply inpul your prgserM
a^e ytifty com'ibulion jna DiOhCCltd mieresT rare A tasi anu eMecitve way ro compare diffwrent
combmalions
f UTLfFfECOST Will flelermire Ihe co^ld any ilem aT any pohor in th^lulurt' A graphic demornsiralion
tnai whil enlighien evK-rvone a^ id the vi\\je ol savmtj ic the lulurc
WHAT S IT WORTH Mill sftow VOU e«icliv Ho* mticfi all H^ai mnnev vou Have )jve<j i5rea<iv wpirn
in roclfly 5 dollars Vou had be!lL*r iir flOwn for Ihiiflile ATARI l?4«i lape Or i33Jt HJiSC 429 9S VIC 20
WITH aK EXPANDER S?9 95
AUTORUN alio*s you ro airromarically doo; your o-sc basea p'ograms wften yoy Dowe' up w^nu
driven and very fast AuEo'ii'n rtill prq&aOTy be one of Ihe most useful piogtam^ yOtj will fivp' 0*n
ATARI I ?4M disc Cirlly »19 95
SKYPilOT is a real time llighl landing sifnulaioi Mitn fji! I'nsi'u'neriUF'on ana ^udc'D graDmcii and
iourifl W&Triinh im tr>t! imesT Hiqhr jimuiatof Av.tiiaDie lor ihe A!*ri ATARh?*Ki taoeor <3?Ki ii'sc
S?1 9b
Super seven afDeneelieni Qames a^^d vmLtijton on js<n<;ip ohp loucn menu ar.«t-r disc Tnu <-i
beyond a douDT me be5i software v-iJue on the mjihet fod^iy
SKVPiLOT 15 included and (Jestrnbeo abovf
EASVHIDEF? is a iQlally unique apprcach to moiorrross 'sci^ij v^tiu nsuSI rheg^oiialiri twiSTinq maze
*.m realistic sOufid ant^ iupfif gfao'^ct
ALlEMisacjneon one cannon $ducer duel Tn*» Alien t,ihesew.isivi>3Cl>tifi sohestiardioait Knjs
love If
SEA Battle puis yOu m commjnrt ot i oiiti**^! Sub au+^ounaed Dv mmes And surface vessels
SiraT«gy counts
VOVAGER must tw quide(3 \Q A sa'e Ijndmg on a ruyqed and noslilc niln'n lar^dMaDe FuH
instrumenTalicn «nd visual display to neip yOu sucri?ed
GERONlMO' iS what youi ne'o yt'iti as he lumos from a sm.iii plan*? tiymij iq tjria on a tropica^
island You musf consider aatn speed and ailitude *hen you Dusf> mm oui
CANNONS IS for one orfwo niayt'f^ Each has ?o shoisand ii time iimii to nir .i movmQi.ifqpt Kids
reaUy eniov thieq^jmi.' ATARI i3?Ki diir only srif^ ■)'^
Send $1 O0(relundablei tor catalog Visa and Master Charge acceoted All order
shipped within 48 hours Salisfaclion guaranteed Include si 5D per orOer for
postage & handling Dealer inquiries welcome
ARMA DESIGN GROUP
1201 Bridge Streel. Asbury Park. N J 07712
(20^774-9099
SC000600GG>
QUALITY PRODUCTS FOR ATARI COMPUTERS ^
±j XA/IFT Ware*
FROM S\A/IFTY SOFTWARE
ORDERED BY NASA
Yes, the National
Aeronautics and Space Ad-
minsitration selected these
three quality products.
HARDWARE
TM
.1^ DISK SEKTKV '
[ a^V An Intgllagtnl digiul accasury hx yoir ATARI ilO (Xsh
S^ D'lvt. Ins y«<j »lacttvaty wrltg lUQ to Mlh sidn ol singla
5id«d loO xrilB protKtBd disks. DISK SENTRY cannot turm
yourdrivs ly disks. Insults and removss easily: no soldarlng
required DISK SENTRY'S LED signals system stalus. prevtn-
tmc accidental erasure ^ ilala. DISK SENTBY is a convenient
push bullon write-protecl override when can [ay tor itt»ll
with voui tirst tn: el dislis. S39.95
SWIFTY TACH MASTER!"
An accurate diik speed diagnostic utility prograin designed
specificaiiy tor ATARI S^O Disi( Ofives Provides easy-to-
read visual inoicaiion ot the speed ol any drive connected
to your systeni Using the accuracy ot iriactiine iargyage.
TACH MASTER displays live RPM readings per second
with a working tachometer accurate to W RPM Allows
you 10 adiusi your flrive(s| to tactory specs easily and j!
any time in the convenience o( your own home Comes
complete with easy to tollow user s nanual $29 95
SWIFTT BUTfUNK ^"
ttigh Quality Smart Tarnunal Cotnniunications program Easy
to use Murti-Odtion, Menu Driven Full peffortTiance
uploading/oownloading. Worits in Duplex or Simplax modes
supposing ASCII and ATASCII transmission Printer Dump
Screen Dump and Disk Search options Use as remote ter-
minal Send/ receiwfl and itn programs and data tiles Saves
connect time charges with commercial services Requires
24K RAM. 810 Disk Drrve. 850 Interlace or equivalent. 830 Or
other 300 Baud modem (Printer optlonall S39.95
^
NEWQAMES
TM
l-k
HAUNTED HILL
In this super game you fight bats and gliosts In
the dark ot a cemetery. This exciting, all
machine language game has arcade qi;allty
graphics and speed. Requires Joystick. DISK
ONLY. $29.95
TM
TRIVIA TREK
A multiple choice game of trivia for one or two
players or teams. Comes complete with fifty
categories of trivia questions and over two
thousand multiple choice answers. A program
for creating your own trivia questions and an-
swers is also included. Play it for fun, lest your
knowledge or entertain ftlends. Parents and
teachers can also make up questior^s. Great at
parties. 32K Disk Only. 129.95
UTIUTIES
DISKEnE INVENTORY SYSTEH ''"
Us* this system to gain control ol your eipanCing
disk/program inventory. Ouickly get locations ot single Of
multiple copies ol your programs and all your valuaow 1ll«
An mvaijapie loot, this system is easy and convenient to use
and to updile ;4K disk system required. 124.95 Pnnir
suggested
SWIFTT UTIUTIES
A valuiDle coiioclion ot programming utilities (or the ATARI
programmer this DISK ONLY package includes M ol
Programming Aids I and additional programs designed to
make programming hme mora etticitnt Special MENti
program runs Ooth saved and Hsteo programs BEM
REMOVER eliminates HEM statements so programs lake less
core and run taster. PflINT B!5 and PRINTEPS custom pnnl
programs prepare condensed, indented and paginated
program listings on your ATARI 825 or EPSON MX-80 prin-
ter Listings Identity machine code, graphics and inverse
vmeo charaaers VARIABLE LIST and VAHIABLE PflINT
programs help you prepare alphaOetiied annotated list ot your
program varlabias A delete lines utility provides convenience
ot line deletion while a DOS CAILER gives yoo co<iv»nieni ac-
cess to many DOS utilities while your program is in core
Disklist prepares disk lackel labels Many ol these programs
work coresident with each other and with your program Disk
Orive and minimum ot 24K required. (39 95
MHIUMIIINa AIDS PACUSE I "^^
Four utility programs 10 help increase programming etficiency
and learn more alsout your computer. BENUMSEfl handles
references and (no variables (ienerates DIagnoslic Tables
lor programming error delectkin PftOGRAU DECODEfl
DECIMAL to BCD and BCD to DECIMAL programs give you j
praclical way ol studying iniernal program reurtsentation and
ATARI number-conversion procedures. Comes with com-
prehensive users manual. I6K cassetle J14 95 24K disk
J19.95
Mooooeeoo
., PERSONAL DATA MANASEMENT
•y^ FILf -IT I ^"
This is Jerry White's popular datat^ase system
for tiling and managing personal and financia
Information. Create, store, manipulate and
retrieve all types of data. Special financial entry
and report programs create a povverful personal
accounting system, fwlonthly Bar Graph
program shows financial data on the screen
andfor printer. Supports up to four disk drives as
well as the Axlon Ramdisk (if you have one).
Mailirg list program generates mailing labels In
one or two across format. Extensively
documented in a ring binder. 24K Disk and Prin-
ter. $49.95 + J3.S0forshlpplng and handling.
FUN "•"UHESn'''''
WOnOGAMES. POSSIBLE and LEAPFflOG giving you hours ot
tun. challenge and entenainment WORDGAMES. two games
in one. conuins GUESSIT - a deductive alphabetic reasoning
game tor one or hvo players and WOHOJUMBLE a multiple
word descrambling puzzle with ptay-on-woro hints and
mystery answers instructKMis show how you can sutistiiute
your own words. Use POSSIBLE to help descrimoie word
jumble puzzles or to create your own . All letter/number com.
binations or permutations of Input are printed to screen or op-
tional pnnier LEAPFROG is a Chinese-Checker type lumping
game in which you try to position hro sets ot animated jum-
ping Irogs in a minimum number of moves tSK Cassette
t19 95: 24K Disk S24.95. Disk verskin of GUESSIT works
with VOTRAX Type -'n ■ TALK A r«a( crowd pleajer
COMfttfi SDONI Sped SMiia AMitiire SertH TH
Real. time Space Flight Simulations
COMINS SOOMt The FaiMT FlHeeteT**
AN easy to use linancial package
ACCESSORIES
VINYL DUST COVERS
Custom sewn upholstery grade vinyl dust
covers for ATARI 800 and 400 computers and
the 810 and 825 peripherals. Protectino your
equipment when hot in use, these crisp black
covers go well with any decor. Specify model(s)
when ordering. J 14. 95 each.
send check or money order Including
Shipping and Handling to:
SWIFTY SOFTWARE, INC
■ U BROAD HOLLOW ROAD ~
MELVILLE, N.Y. 117*7
(Sie)S4S-9U1
H.Y. Ritld«nt> tdd TViK mIm tix
3 S2-50 K
y
I twd far tree catilegM euleref^eaeiidc,e,d.'
I ©1961, 1982SwittySohware, Inc
I NOTE ATARI* is i registered trademark of Atari inc.. a
k Warner Communications Company and all references to
lATAfll* should be so noted
'^'"'*""""" ' ' nnnnVinnnnnriiiLiLiuuooooo,
1M
COMPUTtI
July, 1982, Issue 26
How To Use The
6560 Video
Interface Chip
Dale Gilbert
Henegar, AL
The 6560 Video Interface Chip, the VIC chip,
provides low cost, high resolution, color video to a
color monitor or a color television, and it also in-
corporates a sound generator, A/D converters
[analog! digital], and even a light pen feature.
The 6560, some RAM, a crystal, a few bus
drivers, and a little decode logic is all the hardware
that is required to add color and sound to a micro-
processor that has an expansion bus.
The VIC capabilities include on-chip sync
generation, screen grid size of up to 192 horizontal
dots by 200 vertical dots, two character sizes, three
independent programmable tone generators, a
white noise generator, an amplitude modulator,
screen centering, on-chip DMA address generation,
and two modes of color operation.
The 6560 VIC is manufactured by MOS Tech-
nology, Inc.. Commodore Business Machines
incorporates the 6560 in their VIC-20 Computer. I
purchased my chip from Falk-Baker Associates,
382 Franklin Avenue, Nutley, New Jersey 071 10,
for $14.95.
6560 Software
To produce colored characters, VIC addresses two
blocks of memory at the same time. This address
method produces twelve bits of data. The eight bit
block of memory is called the Character Pointer
Block (called the screen memory on the VIC-20).
The second block of memory is called the
Character Color Block (called the color nibble area
on the VIC-20). This block contains four-bit char-
acter color data.
VIC lakes the character pointer data, left
shifts it three times, and adds the result to the
character cell base address contained in bits zero
through three of register five.
VIC then puts the result on the address bus
which addresses another block of memory called
the Character Cell Block (called character bit maps
on the VIC-20). This block of memory is eight bits
wide. The data obtained from this address is video
information on an 8 x 8 character matrix. The
matrix is eight bytes high and eight bits wide.
VIC takes the four-bit character color data
and, if the MSB is 0, the character matrix will be
displayed in high resolution mode. If the MSB is
one, the character matrix will be displayed in the
multicolor mode.
When the high resolution mode is selected
and when bit-3 of register-F is a zero, all one bits of
the character cell data will be displayed in the
background color and all zero bits will be in the
foreground color. The three remaining bits of the
character color data specify the color of the fore-
ground. The color of the background is specified
by bits four through seven of register-F. If bil-3 of
register-F is 1, the one bits of the character cell
data will be displayed in foreground color and the
zero bits will be displayed in background color.
If bit-3 of register-F is one, all the character
cell matrix will have the same color background. If
bit-3 is a zero, all the character cell matrix will have
common character colors.
When the multicolor mode is selected (MSB of
the character color data is one), there is a pairing
of bits of the character cell data. The character
matrix now is a 4 x 8 dot matrix with each dot's
color determined by the code of each pair. The
code has lour possibilities: 00,01,10,1 1. If a dot
code is 00, its color is the background color specified
by bits four through seven of register-F. If the
code is 01 , the dot color is the same as the external
border color specified by bits zero through two of
register-F. If the code is ten, the dot color is the
foreground color specified by the three bits of the
character color data. If the code is 1 1 , the color of
the dot is specified by bits four through seven of
register-E.
VIC produces a TV raster of up to twenty-two
columns by up to twenty-three rows of character
matrix surrounded by a border. The base address
of the character pointer block contains the first
upper left pointer for that character matrix. The
base address plus one of the character pointer
blocks contains the pointer for the next right char-
acter matrix. It is the responsibility of the MPU to
manipulate the pointers in the character pointer
block of memory. A whole raster of repeated char-
acters (character matrix) can be obtained by just
repeating the pointers in the character pointer
block.
6560 Hardware
The 6560 VIC has fourteen address pins (A0-AI3)
and twelve data pins (DO - Dl 1). When the 02 clock
is high, the MPU can place an addre.ss on the ad-
dress pins and read or write data into any of the
sixteen eight-bit registers via data pins DO - D7.
VIC decodes the address pins and selects registers
zero through F when address 1000 through lOOF
Teach your commodore
to use the telephone.
Telecommunicate with McTerm
Don't miss out on the
computer/teleptione revolution.
With our McTerm pacloge and a
modem, your Commodore
becomes an /nfe/Z/genf terminal.
You can interact with large and
small computers anywhere in
the world.
Access databases like the
Source'", or MicroNet", or Dow
Jones for up-lo-the minute
news, sporls, stock market
reports, etc. Write programs on
your micro and run them on
distant mainframes.
McTerm actually saves you
money and time while you use
it. There's no need to read data
line-by-line as you receive it,
Instead, you can quickly save it
all to disk or printer and sign-
off. You save on expensive
computer time and long
distance phone rates.
McTerm sends and receives
faster than anyttiing else on the
market - up to 1 200 baud.
Adjustable duplex, echo, and
parity. Runs on any Commodore
4000 or 8000 series computer with
BASIC after version 1 .0. Works
with most RS-232 modems and
supports auto dial. Write/Or Phone
for Data Sheet,
McTerm connects you with the rest of the world.
Madison Computer, 1825 Monroe, Madison, Wl 53711 USA. 608-255-5552
FOR THE
VIC
Multiple Interfile Connector
This Atl-ln-One Powerful Connector Include:
MIC MON..
MIC ED.,
MIC SET..
Machine LanKuagr Monicor
A must for machine language programmers
and can be used with any memory siie.
Editing Utility Aid
Gives programmers 26 new commands and
can be used with the M!C MON.
Reset Button
First lime on VIC. Reset instantly
without switching off computer.
MIC SLOT... Peripheral Slot
Permits connection to any IEEE device,
3 K Super Expander for graphics or
external memory.
MIC SWITCH... Memory/ Peripheral Sxvitch
Gives the choice of selcctmg added
peripheral memory or lEFE peripherals.
BASIC MIC PRICED AT $249.95
MEMORY OPTIONS
Select from Built-in JK, 8K, 16K, 24K,or 32K
RAM MEMORY BOARDS
THE COMPUTER WORKS
20Z8 West CanKlback
Phoenix, Arizona 85015
Telephone («02)/249-06Il
Dealer Inquiries Inviicd
^ISA .M.ASTERCHARGE
VlCw^are
By: MicroSpec Ltd.
DATA BASE MANAGER: Create, Add, Delete,
Change, Sort, Search, Print, Write, Read and
Browse are the comiBands available to you.
You can manage your own tlata base. 8-k
expansion required $17.95
HOHE INVENTORY MANAGER: Keep track of all
your household belongings For insurance
purposes. Allows you to add, delete, search,
sort, etc. Will print totals and subtotals
while listing your complete inventory. $H.95
STOCK PORTFOLIO MANAGER: Hill categorize the
stocks you own and allow you to post both
earnings and current quotes. Tracks the last
six quotes and will graph the stocks
perfor«ance. Prints a conprehensive report
with subtotals by category along with
percentage and yield figures $17.95
Many more prograis available. Write for free
catalog.
VISA and HASTERCARD Accepted
2905 Ports O'Call Ct.
Piano Texas
(214) 867-1333
75075
156
COMPUTE!
July, 1982, !ssue 26
(the VIC-20's VIC chip ignores the A 1 5 line) is
placed on the address pins.
The address pins are input pins when 02 is
one; if 02 is zero, then these pins are output address
pins.
When the 02 clock is one, the MPU can also
write or read data to the character pointer RAM,
the character color RAM, and the character cell
RAM. The character cell memory may be RAM,
ROM, or both. The base address of the character
eel! block and/or the character pointer can be
changed by modifying a register in the VIC.
When the 02 clock is low, the VIC addresses
memory in such a way that the character pointer
RAM and the character color RAM is selected at
the same time. VTC must receive character pointer
data on DO through D7 and character color data
on D8 through DI 1 at the same time.
The R/W pin four is an input only pin and
must be driven by the MPU when 02 is one and
held high when 01 is one.
Pins 38 and 39 are the master clock inputs.
The 6560 VIC requires a 14.31818 MHz, two
phase, five volt, non-overlapping signals. The
master clock uses a standard 14.31818 MHz crystal
(4x color) and the delay of 74LS gates to give a
non-overlapping signal. Resistors Rl and R2 are
used to give extra ]3ull up to CMOS levels. CMOS
gates don't seem fast enough for this clock.
Pins 35 and 36 are the system output clock
used for system timing and driving the clock of the
6512 MPU (if used). A 6502 MPU can be used by
feeding pin 36 to the 00 IN pin on the 6502.
Removing the original 00 signal and wiring this
new 00 is the only alteration needed on the mother
MPU.
Because the 6502 address hues are active
when 01 is 1, the expansion address lines to the
VIC and its associated memory must be isolated
from the MPU bus during this time.
The data bus should also be buffered and
gated for this same reason.
The system clocks are five volt, non-overlapping,
1.02 MHz signals.
Pin 19 provides the sound output which must
be fed to an amplifier to a drive speaker. The
output impedence is approximately 1000 ohms.
Pin 3 is the output pin for the composite sync
and the luminance signal. This pin is an open
drain which makes it easy to shift to the needed
voltage level for a RF modulator, TV first video
amplifier, or a black and white CRT monitor.
In the following wiring diagram, diodes K3,
K4. K5, and KB; resistors R5, R6, and R7; and CI
make up the level shifter for a TV output or video
monitor output.
The VIC is a superior CRT controller for a
B/W monitor due to the varying levels of luminance
required for a color picture. VIC can produce
varying shades of gray.
Pin 2 provides the composite color signal. This
signal contains the color phase and amplittide
information plus the 3.58MHz biust signal. Pin 2 is
a high impedence output buffer which can be
applied to the first chroma amplifier of a TV, color
monitor, or RF modulator.
Pins 17 and 18 are the input pins for the Pot-X
and Pot-Y analog to digital converters. A pot is
used to charge an external capacitor tied to the pot
wiper and fed to pin 1 7 or 18. These pins are sys-
tematically pulled to ground after each charge
voltage reading. The voltage is digitized and depo-
sited in register 8 or 9.
Pin 37 is the light gun/pen pin. The voltage of
triggering is approximately 2.5 volts on the falling
edge. Holding this pin low clears registers 6 and 7.
The values of registers 6 and 7 represent the hori-
zontal and vertical positions of the current dot
being scanned. The light gun/pen option is only
available on a 6560-101 which is sometimes iden-
tified by a white dot on the case of the IC.
Address decoding must be provided so that
the character color nibble RAM will be selected,
when the character pointer RAM is addressed by
the VIC, but not selected when the MPU addresses
the character pointer RAM. A data bus transceiver
must be provided to isolate the nibble bus from the
byte btis along with the logic for this transceiver.
The logic must enable the MPU to read or write to
the nibble btis when the 02 clock is one.
The expansion 02 may be u.sed as the E(02) if
the expansion 02 has no more than one LS gate
delay and it is the true MPU 02. If these provisions
can't be met, connect E(02) to the V02 (pin 36).
This author used addresses 1000 through
lOOF for the VIC; 2000 through 23FF for the
character pointer block; 2400 through 27FF for
the character color block; and 2800 through 2BFF
for the character cell block.
The addition of a 6560, a few RAM chips,
and a few gates will free up and complement many
a MPU.
Color Code
Auxiiiary/Background/Border/Foreground
0 BLACK
8 ORANGE
1 WHITE
9 LIGHT ORANGE
2 RED
A PINK
3 CYAN
B LIGHT CYAN
4 MAGENTA
C LIGHT MAGENTA
5 GREEN
D LIGHT GREEN
6 BLUE
E LIGHT BLUE
7 YELLOW
F LIGHT YELLOW
July. W82. Issue 26
COMPUTEI
157
VIC Control Registers
Register Data
RO
Rl
R2
R3
R4
R5
R6
R7
R8
R9
RA
RB
RC
RD
RE
RF
1 = 1
0 = N
Horix, Center Vx4 DtAs
5 4 3 2 1
Vertical Center Vx2 Dots
6 5 4 3 2 1
,\9
RV
0
No. of Character Matrix Columns
6 5 4 3 2 10
No. of Character Matrix Rows
5 4 3 2 10
1 =D
0 = S
Raster Value
6 5 4 3
Bane Cp
A13 A12 All AlO
Base Char. Celt
A13 A12 All AID
LP Horizontal Position
6 5 4 3 2 1
l.P Vertical Position
5 4 3 2
Pol-X
4 3
Pot-Y
.Sw
l=On
Sw
]=On
Sw
I =Or
SW
l=On
Frequency Osc. -1
5 4 3 2
Frequency Osc. -2
4 3 2 1
Fre<juenev Osc. -3
4 3' 2
Frequency Noise Gen.
5 4 3 2 1 0
Auxiliary Code
3 2 ■ I I)
Background Ci>dc
3 "2 1 0
Audio Amplitude
3 2 10
1=B
0 = F
Border Code
2 1 0
Address
1000
1001
1002
1003
100-1
1005
1006
1007
1008
1009
tOOA
lOOB
lOOC
lOOD
lOOE
lOOF
Abbreviations:
1 = Interlace
N = None Interlace
CP = Character Pointer
Base Address
R = Raster
V = Value
S = 8x8 Matrix
D= 16x8 Matrix
B = Common Background
F = Common Foreground
LP = Light Pen
Sw = Switch
Color
Output *
1?
N,-
N,
N„ —
Dfi —
D,—
D,
D,
D,—
Do-
O
IS,
in
To Sound
Amp
^
+
SmFD 'i
— +
— MO,
-MOj
— LP
— VOj
-vo,
-AI3
— A12
-All
— AlO
-A9
— A8
-A7
— A6
-A5
— A4
I A3
— A2
Al
- AO
PotV PotX
COMPUTE! Books
P.O. Box 5406 Greensbofo. NC 27403
Ask your retailer for these COMPUTE! Books.
If he or she has sold out, order directly from
COMPUTEI
For Fastest Service
Coll Our TOLL FREE US Order Line
800-334-0868
In HC call 919-275-9809
Quan. Title
Price Total
_The Beginner's Guide To
Buying A Personal Computer $ 3.95
[Add SlOO shipping and handling. Outside US odd
54,00 air mail; S2.00 surfoce moil.]
_COIVIPUTE!'s First Boolf of Atari $12.95
(Add $2.00 shipping and handling. Outside US add
S4.00 air moil: S2,00 surface mait)
Jnside Atari DOS $19.95
[Add S2,00 shipping and handling. Outside US add
54.00 air mail; $2.00 surface mail.)
_COIVIPUTE!'s First Book of
PET/CBM $12.95
(Add S2.00 shipping and handling. Outside US add
S4.00 air mail; S2.00 surface mail.)
.Programming the PET/CBM $24.95
(Add S3.00 shipping and handling. Outside US add
59,00 air mail; $3,00 surface mail)
_Every Kid's First Book of
Robots and Computers $ 4.95
Available In July. (Add $1,00 shipping and handling,
Outside US add $4.00 air moil; $2,00 surface mail.)
_C0MPUTE!'5 Second Book of
Atari $12.95
AvailobI© in July, (Add $2,00 shipping and handling.
Outside US add $4.00 air mail: S2,00 surfoce mail.)
_COMPUTE!'s First Book of VIC $12.95
Available in August. (Add $2.00 shipping and
handling. Outside US add $4,00 air moil; S2.00
surface mail.)
All orders must be prepaid (money order, check, or
charge). All payments must be In US funds. NC
residents add 4% sales tax.
n Payment enctosed
Please charge my QVISA D MC □ Am. Exp.
Acc't. No. Expires /
Name
Address
City
State
J^
Country
Allow 4-5 weeks for delirery.
This Publication
is available in Microform.
University Microfilms International
Please send additional inlurnKUidn
fur
Numc_-
Inslilution-
StreeL-
Cilv_
Stale Zip
300N«nti Zooh Ri.Mtl. IX-pt PR, Ann Arlvir. Mi, JKIIlh
NEW COMMODORE ADD-ONS
RAM-ROM:
GETS RID OF SAFING ROM
MX-910 CBM/PET RAM/ROM; ! ' ^
Allows muiti ROM protected progratns using
the same socket to be put onto tdisheHecassette,
no need to insert protect ROM in socket after initial
load, eliminates need for ROM switcfi box, write
protect in software, decoded for dual ROM socket
usage, 4K expandable to 8K, easy internal CBM .
installation: S1 19.95 ^ -•.-■
MX-232 CBM/PET TO RS-232C i ^-
INTERFACE:
Low cost, bidirectional, 50 to 19,200 baud rate, full
modem controls, parity allows lor two RS-232C CBM
pons, installs easily Inside CBM: $1 99.95
SX-100 IEEE-488/PET MODEM SOnWARE:
Best 810 modem software, by 8010 developer,
works wilfi Source/Micronel/CBM to disk/CBM to
CBM; Intelligent Terminal Software: $79.95 ,J^ —
MX-2Q0 IEEE-488/PET PARITT ' ' -
MODEM/SOFnVARE
Talk to a host computer requiring parity, al features
ofSX232:S399.95 '
MX-113 THER PROTECTION ROM:
Plug in ROM, displays owner's name. etc. when
computer turned on; S49.95
ECX COMPUTER COMPANY
! 2678 NORTH MAIN ST. i
' WALNUT CREEK, CA 94596 ; i„
(415)944-9277 j.fl
For additional new product information and catalog
send self addressed, stamped envelope.
..PET/CBMA^IC? SEE SKYLES. . .
PET owners everywhere sing
JjJ) Thanks for the MemoriesJ)J^
to good old Bob Skyles
. . , ihey should . . . because Bob Skytes is the only
complete source for memory boards for any PET ever
sold. Old Bob won't forget you.
And the Skyks memory sysicmi ha\e ihc hiflhe^i quality control of any
computer product ever. 0\er 100 million bitv of Skyles meinory boards are
already in the rtcld. First quality static and dynamic R.AMS. solid soMered on
first qualilv glass epoxy. That is why they are Euaranleed — inspiieufllicnfw
Inwer prkei—hx » full Ivin jcars.
The boards, inside ihc PET 'CBM. install iti mtnittes withotil special loolsor
equipment . . .just a screwdriver.
Because of our new dynamic mcmors design, and to celebrate old Bob's 30|j
birttiday, here are the smashing new prices:
SK Memory Svsiem ori^. S250.00 no»- $200.00 Save S 50.00
I6h MemoTV Svitem orig. S4M00 no»- SiOO.OO Save SI 50.00
14K Memory System orig. S650. 00 now S400. 00 Save S250. 00
...I'orunrPCT ever made. \Vhenordering,jiisi describe your PET by model
number and indicate the amount and type (or brand) of memory currently in
the unit.
Shipping and Handling (USA /Canada) $3.50 (Europe/. Asia) SIS.OO
California residenn must add 6%/ 6": '"o sales ia.\; as required.
Vi.sa/Maslercard orders: call lollfree (800) 227-9998 (except CalilorniaJ.
California orders: please call (4151 965-1735.
I
Skyles Electric Works
231K South Whisman Road
Mounlain \ie», Catifornia 94(Ml
(415)965-1735
...PET/CBMA^IC? SEE SKYLES. . .
NEW FOR 82
• PAYROLL SYSTEM •
• OVER 100 EMPLOYEES
• 25 DATA FIELDS PER
EMPLOYEE
• MULTIPLE RATES
• OVERTIME
• VACATION
• SUBSISTENCE
• 16 GEN. LEDGER
CATEGORIES
• PRINTS CHECKS OR
CHECK STUBS
• W2 FORMS
• CALIF. DE3AND
DE3B. 941 AND
(INTRODUCTORY PRICE) OTHER REPORTS
FOR MOD 8032 (4040 OR 8050)
OTHER BUSINESS PROGRAMS AND PRICE LIST AVAILABLE
EETM
SOFTWARE COX
3436 MENDOCINO AVE.
\ SANTA ROSA. CA 95401
^ (707) 544-3425
July. 1982, Issue 26
COMPUTEI
159
This compactor analyzes and compresses BASIC at
Ughining speed. For PETICBM, Upgrade and 4.0
BASIC, wilh disk drive.
Machine
Language
Compactor
David L. Evans
Caldwell, ID
When the programs "Compactor" and "Un-
Com]3actor" by Robert Baker appeared in the
Sepl./Oci., 1980 and May, 1981, issues, respectively,
of COMPUTE! I immediately typed them in and
tried tliem out on several of my programs.
To my dismay, compacting a 16K program
required approximately 48-.52 minutes. I am a
college siudent and spend a limited amount of
time on my computer (a 16K 4.0 PET) due to studv
dme and my job. That compacting time ate heavily
into the time 1 spend on my PET and I decided to
do something about it. This program is the result.
1 tried several different BASIC versions of the
program, but coidd come up wilh no noticeable
increase in speed. I then decided to give machine
language a try. The result? A 947% increase in
speed! Even this phenomenal increase in speed can
be improved a bit (uriher by eliminating the error
checking in my input subroutine.
The program consists of five different sections.
The input section prints the direcdons and inputs
the input and output tile names. The scanning
section scans the B.'VSIC program for target line
numbers and prints them for you to see, while also
storing them for use by the compacting section.
The compacting section compacts the program
(where possible) atid prints "DONE" when
finished.
A following subroutine section contains an
input subroutine, a line number checking routine,
and a disk error routine. Following these four
sections is the data and work storage area. This
program was designed to riui on both Upgrade
and 4.0 ROMs. It will automatically adjust itself to
work on either ROM set, so all the user has to do is
to LOAD the PROGRAM and type RUN.
Running the program is fairly simple. Load
the program into memory with the LOAD oi"
DLOAD command, depending upon which com-
puter you have. If you do not have DOS 2.0 or
higher, make sm^e that both drives are initialized.
Type RUN, and the computer will print a short
greeting along with some brief directions.
Typing In Compactor
Below are the step-by-step instructions
for entering and SAVEing Compactor.
COMPUTE! generally provides BASIC
loaders so that readers who don't know
machine language can easily type in and
use machine language subroutines and
programs. Though it could be done, we felt
that creating a BASIC loader for C'ompactor
would be loo complicated to be worthwhile:
Compactor sits in memory stalling at ad-
dress 1024 (like a BASIC progi-am). A
loader would involve an awkward process
of writing over itself and checksums would
be equally difficult to use.
Instead, Compactor is presented as hex
dump. To enter it into the computer:
1 . Type: SYS 1024 (to enter the
machine language monitor).
2. When prompted by the period (.),
type M 0400 0460 and ihe screen will reveal
(in hexadecimal niuiibers) the contents of
the memor) cells between address 0400 and
0460. You can type over these numbers and
hit RETURN on each line, thereby entering
the new niuiibers into memory. So, for the
first line, you type: 00 OB 04 FF FF 9E 31
HO (RETURN). Continue on until you've
lypcd and entered line 0460 as ii appears in
the magazine listing.
3. Then do the next block of memory.
Type: M 0468 0500 and continue on, re-
placing the values on screen with Compac-
tor's numbers as printed. When you've
typed in the last line, (()B70), you are done.
4. Now Compactor is in your com-
jHiter's memorv and it must be SAVT.d onto
a disk. Type: S "0:COMFACTOR",
08,()400,0B78 (RETURN) and il will now
be a\ailable for use as a program called
"C:OMPACTOR" on the disk in Drive zero.
5. If the power went off just before you
finished (and you lost everything, including
your temper), you might prefer to take up
the author's offer (at the end of the arucle)
to make a copy for you.
160
COMPUTE!
July. 1982. Issue 26
After reading the directions, type in \ our
input flic name preceded bv die drive ninnber the
iile is on. Kxainple : ():C:ON!FA(: TOR. You will
tlien be asked for the output llle name; do the
same wiili it as you did with tlie input file name.
The computer will then scan and conij)act vour
[program. If any disk error is detected, the program
will report il and will return to BASIC. After yoiu'
program has been compacied, l,OAD il into mem-
ory and tvpe the C'LR command; this will fix all the
line links. Be sure to reS.W^E ihe corrected copy.
Clearly, machine language lends itself to input/
output programs more readily tlian BASK' does.
Once the basics of how to opi-n (lies from niacliine
language are learned (see COMPUTE!, April, 1 9S I .
# 1 1), it is easy to generate input/outpiu programs
in machine language wliich will run at a pheno-
menal speed.
For those of vou who do not want to type this
in. I will make you a copy of it if you will .send me
$3.00 and a self-addressed, stamped mailer and a
blank tape or disk. For those who send a disk, I
have DOS 2.0. so all disks will be written in DOS 2.0.
04E0 8E A9 0F 85 D2 85 D3 A9
04E8 08 85 D4 A9 00 85 Dl 20
04F0 63 F5 20 F7 09 A2 00 BD
04F8 50 0C C9 0D F0 04 E8 4C
0500 F7 04 A9 2C 9D 50 0C 9D
D(t
vid /■;
iHins
2202 Ellis Ai
('.
Caldwell, ID 83605
0400
00
0B
04
FF
FF
9E
31
30
0408
33
37
00
00
00
AD
50
C3
0410
C9
2E
F0
38
A9
24
8D
F0
0418
04
8D
30
05
8D
EC
06
8D
0420
09
07
A9
AE
8D
69
06
8D
0428
6E
06
8D
A7
06
8D
89
09
0430
8D
91
09
80
99
09
A9
D9
0438
8D
88
06
8D
SE
07
8D
DA
0440
08
A9
DC
8D
89
06
8D
5F
0448
07
8D
DB
08
A9
78
85
01
0450
A9
0B
85
02
A0
00
A9
00
0458
91
01
C8
D0
F9
E6
02
A5
0460
02
C9
16
D0
EF
A9
0D
8D
0468
88
0B
A9
00
8D
87
0B
A2
0470
00
BD
48
0A
C9
00
F0
07
0478
20
D2
FF
E8
4C
71
04
A2
0480
00
20
CF
FF
9D
50
0C
C9
0488
0D
F0
08
E8
E0
12
F0
03
0490
4C
81
04
E8
A9
0D
9D
50
0498
0C
AD
50
0C
C9
30
F0
04
04A0
C9
31
D0
CB
AD
51
0C
C9
04A8
3A
D0
C4
A2
00
BD
09
0B
04B0
C9
00
F0
07
20
D2
FF
E8
04B8
4C
AD
04
A2
00
20
CF
FF
04C0
9D
70
0C
C9
0D
F0
08
E8
04C8
E0
12
F0
03
4C
BD
04
AD
04D0
70
0C
C9
30
F0
04
C9
31
04D8
D0
95
AD
71
0C
C9
3A
D0
0510
52
9D
53
0C
E8
E8
E8
E8
0518
8E
86
0B
86
01
A9
05
85
0520
D2
85
D3
A9
08
85
04
A9
0528
50
85
DA
A9
0C
85
DB
20
0530
63
F5
20
F7
09
20
CE
09
0538
20
CE
09
18
AD
78
0B
6D
0540
79
0B
B0
07
C9
00
00
03
0548
4C
Al
06
20
CE
09
AD
78
0550
0B
8D
7A
0B
AD
79
0B
8D
0558
7B
0B
20
D7
09
AD
79
0B
0560
C9
00
F0
04
C9
89
F0
08
0568
C9
8D
F0
04
C9
A7
D0
EA
0570
A9
00
8D
7C
0B
8D
70
0B
0578
20
07
09
AD
79
0B
C9
3A
0580
B0
OB
90
03
20
07
09
AD
0588
79
0B
C9
20
F0
EA
C9
3A
0590
B0
58
C9
30
90
54
A9
0A
0598
85
01
A9
00
80
7E
0B
A2
05A0
08
0A
2E
7E
0B
06
01
90
05A8
09
18
60
7C
0B
90
03
EE
05B0
7E
0B
CA
D0
EC
BD
7C
08
05B8
AD
7D
08
0A
85
01
0A
0A
05C0
18
65
01
6D
7E
0B
80
70
05C8
0B
38
AD
79
0B
E9
30
80
05D0
79
0B
18
AD
79
0B
60
7C
05D8
0B
8D
7C
0B
90
03
EE
7D
05E0
0B
20
D7
09
AD
79
0B
4C
05E8
8E
05
AD
7C
0B
8D
83
0B
05F0
AD
7D
0B
8D
84
0B
20
9C
05F8
09
AD
85
0B
C9
FF
F0
71
0600
AD
87
0B
C9
00
D0
07
AD
0610
08
80
IE
06
AD
88
0B
80
0618
IF
06
AD
7C
0B
80
FF
FF
0620
EE
87
0B
AD
87
0B
C9
00
0628
D0
0A
EE
88
0B
AD
88
0B
0630
C9
16
B0
22
AD
87
0B
80
0638
44
06
AD
88
0B
80
45
06
0640
AD
7D
0B
80
FF
FF
EE
87
0648
0B
AD
87
0B
C9
00
00
03
0650
EE
88
0B
4C
71
06
A2
00
0658
BD
39
0B
C9
00
F0
07
20
0660
02
FF
E8
4C
58
06
A9
05
0668
20
E2
F2
A9
0F
20
E2
F2
0670
60
A2
00
BD
IF
0B
C9
00
0678
F0
07
20
02
FF
E8
4C
73
0680
06
AE
7C
0B
AD
70
0B
20
commodore
SHOW SPECTACULAR
8032-32K 80 COL CRT
REG S1495
$1065
64K ADD-ON MEMORY
REG S500
$395
9000 ^34K SUPER PET
REG 81 995
$1795
4032 32K 40 COL CRT
REG S1295
$965
4016 16K 40 COL CRT
REG $995
$765
8050-DUAL DISK 950K
REG $1795
$1295
4040-DUAL DISK 343K
REG S1295
$995
2034-SfNGLE DISK 170K
REG S495
$525
C2N-CASSETTE DRIVE
REG $75
$65
4022-80 COL PRINTER
REG S795
$595
8023P-136 COL PRINTER
REG S995
$849
8300P-40CPS LTR QLTY
REG $2250
$1995
8024-MANNESMAN TALLEY
"""'^ $1595
8024L-LETTER TALLEY
REG $2495 3>J9p5
25CPS-STARWRITER
REG S1895
$1445
CBM-IEEE MODEM
REG $279
$229
VOICE SYNTHESIZER
REGS395 3329
PET TO IEEE CABLE
REG S39.95
$34
IEEE TO IEEE CABLE
MATOR SHARK
HARD DISK DRIVE
REG $49.95
$39
VIC 20
REG S299
$265
VIC 1540 DISK 170K
REG $599 ^^gg
VIC 1515 30CPS PRINTER
REG$39533^
VIC 1011 RS 232 INTER
REG $49.95 a«q
VIC 1112 IEEE INTER
REG $99.95
$79
special pricing on Atari, Apple, Digilog, Epson, Hayes Modem,
*Winchester Disk
* Commodore DOS 2.5
*24 Megabyte
$6475
Strobe 100 Plotter
*PET Interface
'Software Pack
$975 I
SCHOOL SPECIALS
3 for 2 Pricing
CALL US!
20% Off on Software
Printwheels
PHILADELPHIA COMPUTER DISCOUNT©
P.O. Box 170 St. Davids, PA 19087 (215)687-8540
MAIL ORDER PHONE 1-800-345-1289
PREPAID ORDERS SHIPPED FREE
VISA & MASTERCARD ADD 3%
COD - UPS
PA RESIDENTS ADD 6% SALES TAX
Hueic
162
COMPUTE!
July. 1982, Issue 26
0688 83 CF AD 79 0B C9 2C D0
0690 03 AC 70 05 C9 20 F0 03
0698 4C 5D 05 20 D7 09 4C 8A
06A0 06 20 CC FF A9 05 20 E2
06A8 F2 A2 00 BD 49 0B C9 00
06B0 F0 07 20 D2 FF E8 AC AB
06B8 06 A2 00 BD 70 0C C9 00
06C0 F0 04 E8 4C BB 06 A0 00
06C8 89 70 0B C9 00 F0 08 90
06D0 70 0C C8 E8 4C C8 06 86
06D8 Dl A9 06 85 D2 85 D3 A9
06E0 08 85 D4 A9 70 85 DA A9
06E8 0C 85 DB 20 63 F5 20 F7
06F0 09 AE 86 0B 86 Dl A9 05
06F8 85 D2 85 D3 A9 08 85 D4
0700 A9 50 85 DA A9 0C 85 DB
0710 09 A2 06 20 C9 FF AD 78
0718 0B 20 D2 FF AD 79 0B 20
0720 D2 FF 20 CC FF A9 00 BD
0728 7F 0B 20 CE 09 AD 78 0B
0730 8D 80 0B AD 79 0B 8D 81
0738 0B A9 00 BD 82 0B 18 AD
0740 78 0B 6D 79 0B B0 07 C9
0748 00 D0 03 4C 63 09 20 CE
0750 09 AE 78 0B 8E 83 08 AO
0758 79 0B 8D 84 0B 20 83 CF
0760 20 D7 09 AD 79 0B C9 20
0768 F0 F6 C9 3A F0 F2 C9 00
0770 F0 0E C9 8F D0 19 20 D7
0778 09 AD 79 0B C9 00 D0 F6
0780 A9 01 8D 82 0B 20 9C 09
0788 AD 85 0B C9 FF D0 9B A2
0790 06 20 C9 FF AD 80 0B 20
0798 D2 FF AD 81 0B 20 D2 FF
07A0 AD 83 0B 20 D2 FF AD 84
07A8 0B 20 D2 FF 20 CC FF A9
07B0 04 8D 7F 0B AD 82 0B C9
07B8 00 F0 12 A2 06 20 C9 FF
07C0 A9 3A 20 D2 FF 20 CC FF
07C8 A9 05 8D 7F 0B A9 B0 BD
07D0 82 08 4C E9 07 A2 06 20
07D8 C9 FF AD 79 0B 20 D2 FF
07E0 20 CC FF EE 7F 0B 20 D7
07E8 09 AD 79 0B C9 89 F0 08
07F0 C9 83 F0 04 C9 A7 D0 05
07F8 A9 01 8D 82 0B AD 79 0B
0800 C9 00 D0 03 4C 9C 08 C9
0810 D7 09 AD 79 0B C9 00 00
0818 F6 4C 9C 08 AD 79 0B C9
0820 22 D0 46 A2 06 20 C9 FF
0828 AD 79 0B 20 D2 FF 20 CC
0830 FF EE 7F 0B 20 D7 09 AD
0838 79 0B C9 22 F0 97 C9 00
0840 D0 El AD 82 08 C9 00 F0
0848 0D A9 00 8D 79 08 A2 06
0850 20 C9 FF 4C IC 07 A2 06
0858 20 C9 FF A9 22 20 D2 FF
0850 20 CC FF EE 7F 0B 4C 9C
0868 08 AD 79 0B C9 3A F0 03
0870 4C D5 07 20 D7 09 AD 79
0878 08 C9 20 F0 F6 C9 3A F0
0880 F2 C9 8F F0 8A C9 00 F0
0888 13 A2 06 20 C9 FF A9 3A
0890 20 D2 FF 20 CC FF EE 7F
0898 0B 4C E9 07 AD 82 08 C9
08A0 00 D0 07 AD 7F 08 C9 A8
08A8 90 0D A9 00 8D 79 0B A2
08B0 06 20 C9 FF 4C IC 07 20
0888 CE 09 18 AD 78 08 60 79
08C0 0B B0 07 C9 00 D0 03 4C
08C8 63 09 20 CE 09 AE 78 0B
0800 8E 83 08 AD 79 08 8D 84
08D8 08 20 83 CF 20 9C 09 AD
08E0 85 0B C9 FF F0 2C 20 D7
08E8 09 AD 79 0B C9 8F D0 03
08F0 4C 0F 08 C9 20 F0 EF 09
08F8 3A F0 EB C9 00 F0 B8 A2
0900 06 20 C9 FF A9 3A 20 D2
0910 E9 07 A2 06 20 C9 FF A9
0918 00 20 D2 FF A9 01 20 D2
0920 FF 20 D2 FF AD 83 08 20
0928 D2 FF AD 84 08 20 D2 FF
0930 20 CC FF A9 04 8D 7F 08
0938 20 D7 09 AD 79 08 C9 20
0940 F0 F6 C9 3A F0 F2 C9 00
0948 F0 04 C9 8F D0 0D A2 06
0950 20 C9 FF A9 3A 20 D2 FF
0958 20 CC FF A9 00 8D 82 08
0960 4C E9 07 A2 06 20 C9 FF
0968 A9 00 20 D2 FF 20 D2 FF
0970 20 D2 FF 20 CC FF A2 00
0978 BD 65 0B C9 00 F0 07 20
0980 D2 FF E8 4C 78 09 A9 05
0988 20 E2 F2 20 F7 09 A9 05
0990 20 E2 F2 20 F7 09 A9 0F
0998 20 E2 F2 60 A9 0C 85 02
09A0 A9 00 85 01 A8 AA AD 83
09A8 0B Dl 01 D0 09 C8 AD 84
09B0 08 Dl 01 F0 13 88 C8 C8
09B8 D0 EC E6 02 A5 02 C9 16
09C0 D0 DE A9 00 8D 85 0B 60
09C8 A9 FF 8D 85 0B 50 20 D7
09D0 09 AD 79 0B 8D 78 08 A2
09D8 05 20 C6 FF 20 E4 FF 85
09E0 01 A9 01 8D 89 0B 20 F7
09E8 09 A5 01 8D 79 0B A9 00
COMMODORE VIC
PERSONAL COMPUTER
60% more powerful than VIC-20
$299
Special Sale Price
00
FOR THE SPECIAL SALE PRICE OF
$299.00 you get the COMMODORE
VIC-20 computer plus WE ADD 3000,
BYTES OF MEMORY to give you 60%
MORE PROGRAMMING POWER! This
powerful fullsized extra featured com-
puter includes the 6502 microprocessor
(LIKE APPLE) 20,000 bytes ROM with a
16K extended LEVEL II Microsoft BASIC,
8000 bytes RAM plug in expandable to
32,000 bytes RAM, 66 key typewriter pro-
fessional expanded keyboard with
graphic symbols on keys, color com-
mand keys, high resolution graphics, 512
displayable characters, text display is 22
lines 23 characters, sound and music,
real time, upper lower case, full screen
editing cursor, floating point decimal and
trig functions, string arrays, scrolling,
multi statement lines, file managment,
PEEK AND POKE. Assembly machine
language is available. We have easy to
use self leaching books and programs.
Accept TAPE-DtSK-PLUG IN CART-
RIDGES, connects to any TV, includes
AC adaptor, R.F. modulator, switch box,
self leaching instruction book, comes in
a beautiful console case for ony $299.00.
LOW COST PLUG IN EXPANSION
Expansion accessories plug directly into
this computer, extra RAM memory, Con-
trollers, a Cassette, A Telephone Modem
for only $109.00, an 80 Column Printer for
$375.00, even the 170K Disk Drive plugs In
direct. You do not have to buy an expen-
sive expansion interface.
WHY SUCH A LOW PRICE
WE GIVE YOU 60% to 400% MORE PRO-
GRAMMING POWER THAN VIC-201 You
can't beat our prices for the VIC-20 with
increased programming power added!
We sell direct to customers. We save
you the profit margin normally made by
computer stores, department stores, and
distributors. We are willing to take a
smaller margin to develop volume!
INVEST IN YOUR CHILDREN
Educate your children while they play.
Every kid wants to play electronic games.
(We have some of the best). The next
natural Jtep for their curiosity is to try
simple programming. They can do this in
20 minutes with our simple self teaching
instruction book. High schools are
leaching computer math, science and pro-
gramming ■ some start In grammar school.
• We Stock More VIC-20
Programs and Accessories
than anyone in the USA!
• We Stock "United Micro's"
VIC-20 Super Programs!
Arcade Quality up to 256
Levels-Super Graphics
Sound-Fast Action
Unrelenting Challenge.
• VIC-20 Owners Write for
Free Catalog.
If you provide this computer as a Teacher
and Tutor at home, before you know it
your child will be writing computer pro-
grams. You can use yourT.V. to EDUCATE
not frustrate your family and eliminate
T.V. boredom with programs that
challenge, stimulate and entertain the
whole family. We have a wide variety of
games, recreational, home finance and
educational programs to choose from.
Why pay $140.00 to $295.00 for an elec-
tronic game when you can buy this power-
ful computer for only $299.00.
COMMUNICATE WITH THE WORLD
Plug in your VIC telephone modem. Now
you can get a world of information through
your telephone, plus electronic mail. Just
dial up the information you want. UPI wire
service, stock market, historical informa-
tion by topic from over 60 magazines, in-
cluding New York times. Airline informa-
tion, order tickets, get weather informa-
tion anywhere in the world, restaurant and
hotel information, thousands of
categories are on line for you, business,
finance, education, entertainment, games
etc. YOU'LL BE THE TALK OF \OUR
NEIGHBORHOOD. Our telephone modem
price is by far the lowest available.
IMMEDIATE REPLACEMENT WARRANTY
If your computer fails because of warranty
defect within 90 days from date of pur-
chase, you simply send your computer to
us via United Parcel Service prepaid. We
will "immediately" send you a replace-
ment computer at no charge via United
Parcel Service prepaid. No one we know
gives you this kind of warranty service.
Most computer warranty service takes 30
to 90 days to handle - this fantastic "im-
mediate replacement warranty" is backed
by COMMODORE COMPUTER, a MAJOR
national brand electronics manufacturer.
SPECIAL SALE PRICE $299
FOR ONLY $299 you get the POWERFUL
28K COMMODORE VIC with 60% MORE
PROGRAMMING POWER THAN VIC-20!
28,000 bytes total memory (20,000 bytes
ROM, 8000 bytes RAM and extended
LEVEL II BASIC), the professional 66
keyboard, color, sound, music self
teaching instruction book, A.C. adaptor,
R.F. modulator, T.V. switch box, owners
manual plus all the other features listed,
in a beautiful console.
SPECIAL SALE PRICE $379
FOR ONLY $379 you get the 41K COM-
MODORE VIC with 400% MORE PRO-
GRAMMING POWER THAN VIC-20! We
add 16,000 bytes memory to the VIC-20.
You get a total of 41,000 bytes memory
(20,000 bytes ROM, 21,000 bytes RAM
and extended LEVEL II BASIC) plus all
the extra features shown for the 28K
COMMODOREVIC.
SPECIAL DATA CASSETTE SALE
THIS SPECIAL DATA CASSETTE has
special electronics that eliminates
loading problems and loss of programs
recorded on tape! Includes tape counter
and your selection of any $14.95 "GAME
PACK" program FREE!!! Reg. Price
$90.00 Sale Price $69.00 (A standard tape
recorder will not work).
15 DAY FREE TRIAL
DON'T MISS THIS SALE ORDER NOW
I I Please send me the 28K
' — ' Commodore VIC Computer for
$299.00
I I Please send me the 41 K
Commodore VIC Computer for
$379.00
I I Special Data Cassette $69.00
We ship C.O.D. and honor Visa and
Master Card.
Name
Address
City
State.
.Zip Code.
n VISA D MASTER CARD D C.O.D.
Credit Card No
Expiration Date
Add $10.00 for shipping, handling and In-
surance. Illinois residents please add
6% tax. Add $20.00 for CANADA, PUER-
TO RICO, HAWAII orders. WE DO NO EX-
PORT TO OTHER COUNTRIES.
Enclose Cashiers Check, Money Order or
Personal Check. Allow 14 days for
delivery (21 days for Personal Check
orders,) 2 to 7 days for phone orders.
Canada orders must be in U.S. dollars.
we are ^,_
commodore VIC
experts!!
ENTERPRIZES
BOX 550, BARRINGTON, ILLINOIS 60010
Phone 312/382-5244 to order
164
09F0
8D
89
0B
20
CC
FF
60
A2
09F8
0F
20
C6
FF
A2
00
20
E4
0A00
FF
C9
0D
F0
07
9D
A0
0C
0A10
20
CC
FF
AD
A0
0C
C9
30
0A18
D0
08
AD
Al
0C
C9
30
D0
0A20
01
60
A9
0D
20
D2
FF
A2
0A28
00
BD
A0
0C
20
D2
FF
E0
0A30
00
F0
04
E8
4C
29
0A
68
0A38
68
AD
89
08
C9
00
F0
07
0A40
A9
00
8D
89
0B
68
68
60
0A48
93
20
20
20
20
20
20
20
0A50
4D
41
43
48
49
4E
45
20
0A58
4C
41
4E
47
55
41
47
45
0A60
20
43
4F
4D
50
41
43
54
0A68
4F
52
0D
0D
0D
42
59
3A
0A70
20
44
41
56
49
44
20
45
0A78
56
41
4E
53
0D
0D
0D
45
0A80
4E
54
45
52
20
46
49
4C
0A88
45
20
4E
41
4D
45
20
57
0A90
49
54
48
20
54
48
45
20
0A98
44
52
49
56
45
20
4E
55
0AA0
4D
42
45
52
0D
0D
50
52
0AA8
45
43
45
44
49
4E
47
20
0AB0
49
54
2E
0D
0D
45
58
41
COMPUTEI
July, 1982. Issue
26
0AB8
4D
50
4C
45
3A
20
20
20
0AC0
30
3A
46
49
4C
45
4E
41
0AC8
4D
45
0D
0D
44
4F
20
54
0AD0
48
45
20
53
41
4D
45
20
0AD8
57
49
54
48
20
54
48
45
0AE0
20
4F
55
54
50
55
54
20
0AE8
46
49
4C
45
20
4E
41
4D
0AF0
45
2E
0D
0D
0D
0D
49
4E
0AF8
50
55
54
20
46
49
4C
45
0B00
20
4E
41
4D
45
20
3F
20
SMITH CORONA®
Daisy Wheel Printer/Typewriter
with Letter Quality Printing.
RS232oriEEE-488
Interface Included.
Use with CBM, Apple, Atari,
and Others.
TP-1
Available
at $789.00
KS-'
Albany Typewriter & Computer
923 San Pablo Avenue
.1.. Albany, CA 94706
^^ (415)526-1959
0B10
54
20
46
49
4C
45
20
4E
0B18
41
4D
45
20
3F
20
00
93
0B20
46
4F
55
4E
44
20
54
41
0B28
52
47
45
54
20
4C
49
4E
0B3 0
45
20
4E
55
4D
42
45
52
0B38
00
93
54
4F
4F
20
4D
41
0B40
4E
59
20
4C
49
4E
45
53
0B48
00
93
43
4F
4D
50
41
43
0B50
54
49
4E
47
20
4C
49
4E
0B58
45
20
4E
55
4D
42
45
52
0B60
2E
2E
2E
2E
00
93
12
44
0B68
4F
4E
45
0D
0D
0D
0D
00
0B70
2C
50
2C
57
00
00
00
00
NEW FOR ATARI
FROM
MMG MICRO SOFTWARE
****#***(3 AMES* *******
CHOMPER - All machine laiigUttsP arcade game. One ol the only
I ompuler games with inlelligeni monsters . Destined to become a classic
Requires 16K. 1 Joystick S24.95
ASTEROID MINERS - Race agamsl lime' Your mission is to mine
all the asteroids before time runs out BASIC and machine language.
Requires 32K, 1 Joystick S29.95
........NECESSITIES'*******
DISK COMMANDER - Just save this program on your BASIC
disks and it will autoboot and automatically list all programs (rom the disk
onto your screen. Simply run any program by typing in a number
Requires 16K. Disk only $19.95
RAM TEST - The most thorough and lastesl memory lesi available
tor the atari This all machine language program takes 4 mir^ t<j test 48K
It's the only program that tests the cartridge area ot RAM. Good lor new
400 800 computer owners and (or testing new RAM boards
Requires 8K $19.95
........BUSINESS HOME********
MAILING LIST - Extremely last BASIC and machine language
program. Each data disk holds over 500 hies Sort on any of 6 fields at
machine language speed Use any si?e labels or envelopes.
Requires 16K. Disk only 539,95
Unless otherwise specified, available on cassette and disk Please specify
when ordering.
MMG is seeking new Atan Authors. Please call or write lor details.
Please send check or money order to:
MMG MICRO SOFTWARE
P.O. Box 131
Marlboro, New Jersey 07746
or call (201) 583-4362 For C.O.D. deliuenes
New Jersey residents add 5% state tax.
ATARI IS a regtsl^Trd lradtm,u^ of ATARI. Inc
July. 1982. Issue 26
COMPUTE!
165
Insight: Atari
Bill Wilkinson
Optimized Systems Software
Cupertino, CA
This month I will first respond to some of that
unanswered mail; then part six oi Inside Atari
BASIC, [a coiithiiiing series within this column] will
flelve t'lMther inlo string and arra> mature; and
fnially we will do a pielimiMary exploration oi the
depths of Atari's FMS.
Graphics Revisited
AetLialK , the title of this section niij>ht better he
"maeliiiie languas^e revisited." Probably none of
my eolumns has generated as much response as
part fotir of my Atari I/O series, subtitled
"(Graphics," in the Fcbruar\ , H)S2, issue of
COMPUTE! Liiforltinaieh , most of the response
has been oi the "1 can't make it work" varietv. Of
coin-se, my first response is "but I know it works!"
Yet still the letters ask, "How?"
I flo not inlend to tinu tliis column into a
tutorial on machine language, ihere are several
good books available on 6502 machine language
(including the Inmans' book specifically for The
Atari Assembler), and any struggling beginner who is
trying to make do without at least one of them is
simply a masochist. Howevei-, mv ego savs that it
will be belter fed if more i^eaders understand my
articles.
For the most part, it seemed that those who
had troul)!e with my February article assiuned that
what was published was some neat program to be
used as is. Not .so! I had simply gi\en you a set of
subroutines to use with your own programs. For an
example, let us take a simple BASIC routine and
its machine language equivalciu. iMrst, the BASIC:
30000 POKE 20,0 : POKE 19,0
30010 IF PEEK(I9) = 0 THEN 30010
30020 RETURN
Now, you would not mistake that for a complete
BASIC program. But, ill told you that entering
this i-outine and then executing a GOSUB 3006()
from your program would produce a 4.2667-sccond
pause, you would know when and how to use it. So
let's do the same thing in machine language:
PAUSE
LDA#0
STA 20 ; "poke 20,0"
ST A 19; "poke 19,0"
LOOP
LDA 19
BEQ LOOP ; "if peek(19) = 0 then loop"
RTS ; "return"
Again, this is not a complete program! But if
yoii enter it (say at the end of your own machine
langLiage program) and then execute a JSR PAUSE,
it will produce a 4.2667 second pause. Ncjte, then,
that JSR in machine language is the etjuivalent of
GOSUB in BASIC.
The graphics routines (Program 5) in my
February article are just subroutines, to be placed
in your own machine language program and then
JSRed lo perform their actions. Perhaps the biggest
mistake I made was in presenting these as an as-
sembled listing (complete with "* = $660"). I cer-
tainly never used them as such. In point of fact, I
tested them by .INCLUDEing them in my test
programs, which were written with the OSS EASMD
.Assembler/Editor. .And one of the test programs I
used was, indeed, the example given on page 77 of
that same article.
So how do Ycf» get these subroutines in and
working lor you? First and i'oremost, you obviously
must type in all that code. Perhaps the best thing to
do would be to type it in exactly as shown, including
even the "* = $660" and the ".END". I hen assemble
it and carefully compare the object code generated
with thai in the magazine. When all appears correct,
remove the "•'■ = " line and the "'.END" line, re-
number the whole thing (I would suggest REN
29000,5 or .something similar), and LIST it to
diskette or ca.ssette. Now use NEW and write vour
mainline code. When you are reasonably satisfied
with it, LIST it to disk or cas.sette also.
Now what? Obviously, if you have OS/A + , I
suggest you use .INCLUDE (an assembler pseudo-
op which allows you to include one file while as-
sembling another). In iact, I tend to write assembly
code structured as follows:
.INCLUDE #D:SYSEQU.ASM
<my mainline code>
.INCLUDE #D:library-routine-nuniber-l
.INCLUDE #D:library-routine-number-2
•END
li my "mainline" code is big enough, I may
even break it into two or three pieces and
.INC^LUDE each of them separately.
But what if you don't have .INCILUDE capa-
bility? Well, several assemblers have "FILE" or
"CHAIN," which are not c|uite as flexible (since
you don't return to where yoti left off after you
have assembled a chained-to file. ..thus making the
procediu'e next to useless for zero page equate
files, etc.); but the principle is generally the same:
put your mainline code first and then CHAIN to
166
COMPUTEI
the subroutine files.
And what if you have the Assembler/Editor
cartridge? (For all of its faults, it is still a remarkably
ilexible tool, especially considering that it is usable
\\\[h cassette-based systems.) Again, the principle
holds. The onlv real difference is that vou must do
the INCLUDES your.self. How? Via the ENTER
command. If vou haven't noticed it up until now,
get your manual and read up on the ",M" option of
KXIER. Vou can merge two or more machine
language program files (including cassette files) via
the "',M"' option! Just as you can vvith BASIC, except
thai BASIC always presumes you want to merge.
Are there things to watch out for? Of course.
Would I ever give vou a method without a handful
of caveats? (I) II vou ENTER/merge a file with line
numbers which match some (or all) of those in
niemorv, you will overwrite the in-memory lines.
(2) If you EVER forget the ",M" option, you will
wipe out everylhiug in memory so far. (3) Vou
won't find out about duplicate Ial>els until you
assemble the whole thing.
But even with all these cautions, I strongly
recommend that you store each of your hard-
earned routines on its own file/casselte. It then
becomes almost easy to write the next program
that needs some of those same routines.
liy the way, caution number 1 in the previous
paragraph is (he reast)n I suggested RENumbering
the graphics routines to 29()()0, or some such out of
the way place. If you make notes of what each tile
(or cassette) does, as well as what line luinibcts it
occupies, you can build a powerful lihrarv. And a
P.S.: generally, .INCLUDE, FILE, and CHAIN
commands do not require unique line numbers, so
you need not worry about RENumbering sub-
routines for use in such environments.
Gozinta and Gozouta
As long as we are on the subject ol machine lan-
guage techniques, I would like to point out the
ab.solute necessity of establishing entrv and exit
convenlions for each and every subioutine. .\gain,
if vou will refer to Program 5 from the February
issue, vou will note that each routine (GRAPH IC-S,
COLOR. POSITION, PLOE. LOC.AI E,
DRAWTO, and SETCOLOR) speciOed ENTER
and EXIT conditions. For example. GRAPHICS
requires that the desired gra]>hics mode number
be placed in the A-register before the jSR
GRAPHICS. Upon return (RTS). theV-register is
guaranteed to contain a completion status.
On machines wiih more registers, it is good
practice to write subroutines in a way that any
registers not specifically designated in the EN TER
and EXIT conditions are returned to the caller
unchanged. On the 6502 microprocessor, though.
it is generally hard to write any significant routine
that does not affect all three registers. Therefore. I
have adopted the opposite convention for tiiis
CPU: If the ENTER/EX IF comments don't say
otherwfse, I [jresume thai all registers are garbage
when the routine returns. Whal convention you
adopt doesn't really matter; just be sure to suck to
one, and only one, method and vou won't go
\\rong.
FILL From Machine Language
For those of you who are experienced machine
language progranuuers and have not been kept
entertained iq) to this poiiU, take lieart. Fhe other
question most asked about my February article was
something like "so how do \<)u call FILL Ironi
assembler? " I guess my comment that FILL from
assembly language was exactly the same as from
B.ASIC di<ln't make a very good iin]Mession. So,
okav, I know when I'm licked. Herewith is a FILL
subroutine, which I would hope you would include
with the rest oi liie g!a]jhics routines and keep in
your library for future u.se.
This time, I won't make the mistake of putting
in line iHmil)ets and using "* = " and ".END" Fhis
is a straight subrouline; ty|ae it in and JSR to it only
after you have satisfied its EN' PER conditions.
FILL H,V
; ENTER: Mii\l li<r< w /irfvioush' drmvu the righl hentd cdgi-
: of till- inca Ui hr FILLedvia JSR's to PLOT and
: DMA WT().Jii.-.l jnior In JSR FILL, it must have
; l>r)ji>rmcdii JSR Pl.O'F tt>f-\liihli\h llic lojidn
; hnlliiifi iij thf Ihif which xvilldejiur llir hjl rdi^r iij
; Ihi' tni'ti to l»' Ft!. Led. Fli.I, pifs ii nws that ihr
; adorltifill ivilh is Ihal which rr«.v iiiiisl ti'ci'iilly
; limsi'H : 'iaJSR COLOR. Finally. o>i c>iln\ FILL
,; fxliCfts the ir<^islfrs to sjnrijy tlic ciidiiii^jiosition
; of the liiic tchirh ii'iUdrfiue the Icjt i-dj^c oj the
; filled ami. as follows;
: h (ho?izi»il(ilj jiositiou in X.,\ icgistcrs
; (.V has L.SB itj position. A has MSB)
; V (vertical) position in )' rrt;;islrr
; EXIT: Y-rcgistci has completion status jiom OS fill
■ routine
I'll,l)Ar =: T(>5 ;whcrf \10 uaiils llu- till <()lor
CI-II.l. =: IS :lillis\l() IH
; ri'-st ol't'tiuairs iitf tiotii I-chniiiiv ariick- and [)i-ni;r,iin;
lU.L
JSR POSITION ;sul)i()uLiiictn)mf-VI.. l':IS2
ailii U-
LDA SAVECOLOR ; valik-i-siahlishfd via |SR
COLOR
STA FILDAT : stv B.A.SIC manual: coloriised
toi-FM.l.
LDX #6*$10 :nif(;...ulicR'S:iionnallvis
STATISTICS
FOR
RESEARCHERS
R-STAT
Friendly, eosy to use,
well documented.
INCLUDES:
• Database with transformations
• ANOVA N - way
• Analysis of COvariance One - way
• Stepwise Multiple Regression
(with Ridge-regression)
9 Univariate Statistics
9 Mulilple range tests
• Ciosstabs
• t - tests
• Graphics
• Menu-driven
DISKETTE
& MANUALS
$
350
00
-ATARIsDOS II
For a FREE Brochme or furtlier
iniormation please call or write-
DSC
P.O. BOX 1036
i:E>fTHflLIA. WA 98S31
(206) 7)6-7714
VISA 4 MASTERCHARGE ACCEPTED
^i^-Vii^t.".'-
;jia#£vr... .
SOFTWARE AUTKORS!
for Apple, Atari, TRS-80- NEC, Hitachi
Br^derbund Software is looking for new authors to join its
international team of programmers. If you have a product for
the micro market, let us show you the advantages of working
' with our team of design, production and distribution
specialists, --...-i^,,^,,,.
Call or write for our free Authors Kit today or send us a
machine readable copy of your work for prompt review under.;,..';;
strictest confidence. WV/ W'^'
derbund SoPtuiar
1938 Fourth Street. Son Rafael, Cfl 94901 • (415) 456-6424
RAM
For ATARI
48K RAM BOARD FOR THE 400
• Increases memory capacity
• Reduces power consumption
• Reduces heat
48K Boarif
32K Board
$240
$100
Intec
Peripherals
Corp
906 E. Highland Ave.
San Bernardino, CA 92404
(714)881-1533
ATARI, 400, 800 are Trademarks of ATARI, Inc.
A Revolutionary Concept In Software
For Tt^e ATAPI* 400 and 800 Computers
Sammy The Sea Serpent
A Storybook Prograrn For Children Ages 4 to 7.
Sammy The Sea Serpent
is the story of an imaginery sea creature who
is lost and trying to find his way home. The
story is read aloud to your child by a
professional actress. While the tale is being
told, the child uses the joystick to help Sammy
out of some tight spots.
The A side of the cassette contains the
interactive story; the B side contains games
that the child plays with Sammy.
The program uses voice, sound effects, music,
color and mixed graphics.
Sammy The Sea Se»pent
can be used with either the ATARI 400 or 800
and requires 1 6K. It is available in cassette
format only. Price is $16.95 plus $2.00
shipping and handling.
Also available at fine computer stores.
Progiam Design, Inc/l 1 Idar Court Greenwkh, CT 06830
203-661-8799
ATARI Is the registered trademark of ATARI, Inc.
168
COMPUTIi
July. 1982. Issue 26
LDA
#CFILL
: the fill command (XIO 1 8)
STA
ICCOM.X
: ... is specified
LDA
#0
STA
ICAUX1,X
ircmcniber.XIO 1 8. #6,0
JSR
CIO
; ;iiid let llic OS do the work
RTS
; ...and give us status in the Y-reg
By the way, did you notice that we didn't actu-
ally specify "S:" for the XIO, as specified in the
BASIC manual? Tliat's because the BASIC manual
doesn't tell the whole truth. If you perform XIO
on an already open file, the operating system ig-
nores any filename you give it! Want to save a little
space in your BASIC programs? Use 'XIO 1 8, #6,
0,0,junk.$' where 'junk' is any string variable you
happen to be using for any other purpose in your
program.
Inside Atari BASIC: Part 6
Last month, we delved into the hopefully-no-
longer-mysterious details on how string and array
space is allocated from Atari BASIC and BASIC
A-l- . We showed how to fool BASIC into believing
that a perfectly ordinary string was located smack
in the middle of screen space. The advantage of
such deceptions is that BASIC can move strings of
bytes at extremely high speeds, faster than you
cotild ever hope to accomplish with any BASIC
subroutine.
We did not discuss one other significant use of
such siring moves: Player/Missile Graphics. Obvi-
ously, if you can move the screen bytes around,
you can move the players arotmd just as well, and
just as fast. Again, several games and utilities now
available on the market use just tliis technique.
I also promised in the last column to tell of
po.ssible uses for multiple variables in the same
address space (that is, having a string and an array
occupying the same hunk of memory). If the idea
interests you, read on.
One thing which BASICs in general lack is a
good means of handling record input/output. How
manv times ha\'e vou seen programs doing disk I/O
usmg PRIN r# and 1NPUT#'? Yuch. (I have several
reasons for that "yuch," but the best one is simply
thai PRlNT#ing an item means that the number
of disk b\tes occupied depends upon the contents
of the item.) But what is the alternative? With
many BASICs, there is none. With Atari BASIC
there is at least GE r# and PL'T#, but they are
slow. So let us examine a way to make PRINT#
and INPUT# work for us, instead of against us.
First, we will examine a small program:
100 DIM RECORDS (1) ,NAME$ (20) , QUANTITY
ORDERED (0}
110 OPEN #1 ,8,0, "D: JUNK"
120 WTP = PEEK(134) + 256*PEEK (135)
130 POKE WTP+4,27 : POKE VVTP+6,27
140 GOSUB 900
150 PRINT "GIVE NAME AND QUANTITY:"
160 INPUT NAME$
170 INPUT TEMP : QUANTITYORDERED (0 ) =
TEMP
180 PRINT #1; RECORDS
190 CLOSE #1
200 REM READ FILE WE JUST CREATED
210 OPEN #1,4,0,"D:JUNK"
220 GOSUB 900
230 INPUT #1, RECORDS
240 PRINT "WE READ BACK IN:"
250 PRINT , , NAMES
260 PRINT ,, QUANTITYORDERED (0)
270 CLOSE #1
290 END
900 REM CLEAR THE VARIABLES
910 NAMES=" ":REM
20 BLANKS
920 QUANTITYORDERED (0)=0
930 RETURN
Surprised? Even though we cleared the vari-
ables in line 220, the input of line 230 re-read
them from the file. How? Because line I.^O set the
dimension and Icngili of RECORDS to 27. which
includes (he original single Ijyte (jf RE(X)RDS, the
20 bytes of NAME$. and the six bvles of the single
element of the array QUAN I ITYORDERED. So
PRINT# thought it had to print 27 bytes for
RECORDS, and INPUT# allowed RECORDS to
accept up to 27 bytes.
Wow! With one fell swcjop we have managed
to allow fast disk I/O of any sized record, right?
Wrong. Unfortunately, there are several limitadons
c X WE DEAL EXCLU:
YOUR MARKETPLACE FOR:
J>
ACTION QUEST
EXCLUSIVELY IN PRODUCTS
FOR THE ATARI (THE BEST) COMPUTER
HARDWARE
800 Computer 16K S648
800 Computer 48K S757
400 Computer 16K S338
810 Disk Drive S448
850 Interface 5178
410 Recorder S 78
825 Printer ' S599
16K Ram module S 69
32K Ram module S109
Graphics Tablet S278
Trade your 400 Of older 800 for the new
model 800 - Call
A real time Adventure game played
with joystick. You, as ttie gtiost. move
from room to room in an attempt to
capture valuable prizes while
eluding capture by strange
creatures. 526.9O
16K DISK OR TAPE
mEGALEG^
ARCAOE QUALITY MACHINE
LANGUAGE GAME
16KDISK
OR
TAPES31.40
FAST ACTION . . .
Kill the attacking creatures. It's a
spectacular arcade game with lots of
excitemenll Sure to be one of the TOP
games in the months to come.
PRO-FOOTBALL
Play against the
computer or another
player. Over 25 olfense
and defence plays. The
BEST football game
yet.
16K
$26.90 TAPE
S31.40DISK
SOFTWARE
PAC IVIAN (cart.)
Centipede (cart.)
Microsoft Basic (D)
Ghost Hunter (T)
AM Baba (D) 32K
Protector (T) 32K
Apple Panic (D|
Threshold (D) 40K ,
GORF (D)
Wizard of Wor (D)
Text Wizard (D)
Dodge Racer (Tl
Chicken (T)
De Re Atari
Atari Games Book
Personal Finance
Zork 1 or IMD)
Deluxe Invaders (D)
Eastern Front
Mousekattack (D)
Galactic Chase (T)
Bug Attack (T,D)
Star Raiders (Cart)
Missile Command
Midnight Magic (D)
Tanktics (T,D)
Controller (D|
Call or Write for
S39.50
S39.50
S79.90
S25.50
S28.90
S22.45
S26.90
S33.90
S35.10
S35.10
S87.90
S20.20
S20.20
SI 7.90
SI 3.90
S67.50
S35.90
$31.40
S25.40
S31.40
S22.40
S26.90
S44.90
S39.50
$31.45
S24.65
S27.00
ATARI PRODUCTS CATALOG
wit^^ nearly 1000 items
Canyon Climber
Smart
DONKEYS, 'l/ boulders and birds
dropping rocks try to slop you from
reaching the top. A real challenge. Arcade
quality,
16K
DISK $26.90 TAPE $26.90
The aliens have
landed and it's
your job to save
the city.
(If you
canlj TOP RATE
GAME, ARCAOE
QUALITY. HI-
RES Graphics &
Sound.
32K $26.90
DISK or TAPE
FROGGER
This is the
genuine FROGGER
game that
you see in the arcades. Made by the
same people that made Jawbreaker
(One of the top ten sellers.]
16K DISK OR TAPE
$31.40
B TO ORDER CALL TOLL FREE 800-235-5759
FOR INFORMATION
CALL 805-967-3889
HOW TO ORDER: Send cneck or money oraef or call our toll free
number and use your Visa Card Shipping on software iS S2 00 per
order anywhere m USA Hardware shipping call lor cost CA
residents add S"!! sales lai Add 3°ii tor VISA or MC Equipment
sub|ec! to price ctiange and availability witfiout notice
Store Hours
8 am — 6 pm
Mon. — SaL
5138 Hollister Avenue
'waw
Santa Barbara, CA 93111
■ Alar, is FracTemianc oi Atari
170
COMPUTEI
July. 1982, Issue 26
lo this technique. ( 1 ) The record cannot be over
255 bytes long or INPUT# won't be able to retrieve
it all. And any size over 127 bytes will wipe out
routines/data in the lower half of page $6()i) mem-
ory. (2) The record cannot contain a RF.TURN
(155 decimal. 9B he.x) character. It will print fine,
but the INPL'T# will terminate on the first RE-
TURN it .sees. (3) The other strings in ihe record
(NAME$ in our example) will not have their lengths
set properly by the INPLJT#, thus necessitadng
something like the routine at line 900. Btit if vou
insert -'280 PRINT LEN(NAME5)", you will always
get a result of 20.
Well, limitations one and three are easv enough
to predict and understand, but how do you insure
that your data does not contain a RETURN code?
For strings wliich ha\'e been INPUT by a tiser,
that's easy: the RETURN code will never appear in
such a string. But what about numbers? Remember
that we will l)e printing die imcrnal form of Atari
decimal floating point numbers. Can such numbers
contain a byte with a value of 155 ($9B)? Yes, but
such a nmnber would be in the range ol - 1 E-74 to -
9.E-73, which is unlikely enough to ignore for most
pinposes.
So, in sinnmarv. is this make-a-recorcl tech-
nique useful? I'm not sure. Certainly BGET/BPUT
or RGET/RPUT from BASIC A + or their USR
equivalems under Atari B.-XSIC arc much ea.sier to
code and use. And, yet, there is a certain elegance
to record-oriented techniques which is not entirely
lost to me. I probably will stick with the constructs
we invented for BASIC A + , but I would respect a
[program using the above techniques,
A few last commments: the pokes of line 130
depend on RECORDS being the first variable
defined. Recall my comments from last month
about LIS Ting and reF.N'FERinga program to
insure a particular order ofclefiniiion. Also, if you
need to alter a variable other than variable number
zero, remember that the formulas are:
VVTP + 8 * VNUM + 4 for the LSB of the length
VVTP + 8 * VNUM + 6 for the LSB of the DIMension
(and, again, see last month's article for fuller
explanations).
And. finally, I really would be interested in
hearing from anyone who uses the techniques I
have devised here to produce a unique, real-world
program that docs things that can't be done
otherwise.
Fun With FMS, Canto Ttie First
Remember that fix for burst I/O I gave you in the
Mav, 1982, issue? Did you trv it? Did it prevent
burst I/O errors? Yep. Did it slow down every kind
of disk read? Yep. Oooooopsy daisy. Well, you
can't be completely right all the time. This month,
we will try again.
First, I would like to explain, in terms of the
FMS listing and the commeniarv (Chapter ! 2 -
BURST I/O, Inside Atari DOS, COMPUTE! Books)
why the fix I gave you in die May, 1982, i.ssue
worked insofar as it fixed the burst I/O problems.
To begin with, examine the code at locations
$09F8-$09FD and SOAD2-.$0AD7. These are the
locations in PUT-BYTE and GET-BYTE, respec-
tively, where the burst I/O routine is called. But lo!
In PUT-BYTE, the JSR to burst I/O is directly
preceded by a BCS, meaning that burst I/O won't
occur unless carry is clear. But, in GET-BYTE, the
JSR to burst I/O is directly preceded by a BCC -
burst I/O occurs in read mode only if carry is set!
Now, if you examine the label "WTBUR" at
$OAIF, you will note that the first thing that occurs
is a test of FCBFLG to find out if we are in update
mode or not. If we are updating, we don't burst.
But note that GET-BYTE called the label
"RTBUR", AFTER the test, and so would always
burst, whether in update mcjde or not. What I tried
to do was change the "JSR RTBUR" (at $0AD4) to
a "JSR WTBUR" and then use the carry Hag to
distinguish between the type of request (I changed
the BMI at $0A24 to a BCC). Great! It worked!^
Except. ..it worked ^oo well. Unfortunately, FCBFLG
is zero (and therefore plus) when we have a file
open for read only; so, therefore, the burst I/O was
suppressed for a// reads. Nuts.
We try again, using a slightly different ap-
proach. We will still count on the carry being set
when called from PUT-BYTE and reset when
called from CiET-BYTE. This time, though, we
will examine the actual I/O mode in use. FMS
receives the I/O mode from CIO when the file is
opened and places it in FCBOTC. Recall that the
only legal values are 4, 6, 8. 9, and 12. Well, burst
I/O is only illegal in modes (3 (read directory) and
12 (update). But mode 6 is handled separately (see
$0AC5-S0ACB), so 12 is all we are really concerned
with. Anyway, without further ado, here's the
listing of the FMS patch:
* = $0A1F
; first, patch the code where WTBUR used to be
WTBUR
BURSTIO
LDA FCBOTC,X ; Open Type Code by te
EOR #$0C ; check for mode 12...
update
BEQ NOBURST ;itISupdate..,don'tburst
ROR A ; move carry to MSB of A
register
NOP ;fdleronly
TBURST
; ... and the STA BURTYP remains ... but now BURTYP is
This Publication
is available in
Microform.
University Microfilms
International
Please send additional information
(or
Numc^
institution-
Street
City
State
Zip_
300 North Zeeb Road
Dept. P.R.
Ann Arbor, Mi. 48106
LVTRITJEU:
W
^
Four nuclear reacto;s have gone qui of
control, ready to melt down in only
minutes. They are also protected by pre-
programmed robots that can destroy
anything in seconds. Your mission is
to shut down the reactors and capture
the robots belore a melt down occurs.
But before you enter .. . femember you
are the...
INTRUDER!
16K Cassette 29,95 US funds
24KDislt 34.95 US funds
INHOME
L:liS:HKt:HtltLtt.li;
m
SVT/
^
w^
■\-^-^
,«> .irtP^-3 Jr
'■''''^
BKejdSv^ ^-^^Km
f'Jr^r
^
T^f,
Jf^
^Oi
"^r^ .
You ate in search o( the true meaning to
life, but first yoii must battle each level
m search of the magic ring Will you sur-
vive this horror' What lurks in these deep
and dark ,.
CRYPTS OF TERROR
Joystick -BASIC required.
16K Cassette 29.95 US funds
16KDisk 34.95 US funds
Space Invaders! Asteroids! fvleieor
Showers and more! You have defended
them all. But can you survive the fetish
attack of the.,
ALIEN SWARM
100% Machine - Joysticks
16K Cassette 29.95 US funds
16KDisk 34.95 US funds
Nowavailable.-.ALIEN NUMBER
An educational arcade game.
Cassette S29,95
Disk S34.95
SOFTWARE
MATH PACK + -
Atari brought the computer
age home. Now we bring
home the educational
software.
IvlATH PACK was written for (he educa-
tional side of the Atari by professional
educators in the field of mathematics. All
four independant math programs use
Atari's sound and graphics to make
learning more fun and en|oyable for your
whole family A final summary at the end
of the programs lets you see how well
you've done or what area needs to be
practiced. Age and skill levels.
1) Math Pack Drill*
2} Equations- "
3) Jumble' "'
4) Digit Span"
'BASIC and ' "Joysticks required.
16K- 2 tapes -39, 95 U.S. funds,
16K-Disk-42 95U,S, funds.
Check your local computer dealer or order direct from us.
Ordering: VISA, MasterCard, American Express and Cheques
accepted.
Please include all numbers on cards.
Include phone number with all orders.
Add $2.00 for shipping and handling per item ordered.
Please specify which program ordering.
'DEALER INQUIRIES WELCOME
INHOME
SOFTWARE
PH. 1-416-961-2760
1728 Avenue Rd.
Toronto, Ontario
Canada M5I\/I3Y6
172
COMPUTE)
July. 1982. Issue 26
; negative if BURSTIO was called from GET-BYTE and
; positive if it was called from PUT-BYTE.
* = $0A41
; so we must patch here to account for the sense of being
; inverted from the original.
BPL WRBUR ; called from PUT-BYTE
* = $0AD4
; finally, we must patch the GET-BYTE call so that it no
; longer JSR's to RTBUR.
JSR BURSTIO ; call the common burst
routine
.END
And tor those ol you who don't want to type
all that in, yon miglu simply use BUG to do the
following changes:
C A20< 82,13,49,0C,r0,24,6A,EA
C A41 < 10
C AD5< IF
And, last but not least, from BASIC you may use
the tbilowing:
POKE 2592,130
POKE 2593,19
POKE 2594,73
POKE 2,^95,12
POKE 2596,240
POKE 2597,36
POKE 2598,106
POKE 2599,234
POKE 2625,16
POKE 2773,13
Fun With FMS, Canto Tlie Second
Not long ago, an OSS customer told me that he
couldn't use Atari DOS to SAVE (option K on the
menu) the contents of ROM. "I low sncakv," cried
I, "Best to u.se the SAVF, command under OS/A + .
We wouldn't do anything that nasty to yon!"
But we did. And we do. And it isn't because we
or Atari arc sneaky or nasty; it is yet another
phenomenon of burst I/O. Recall that when the
binst I/O lest is passed, FMS calls SIO to transfer
the sectors of data directly from the user's buffer
space. In order to do so. though, it must write the
sector link infonnalion (last tliree physical bytes in
a sector) into the correct spot in the user's tiuffer
before calling SIO. Then, when SIO returns, it
restores those thiee b)tes and tries to write the
next sector the same way. Again, if you have hiside
Alari DOS, you can follow this happening at ad-
dresses ${)A52-$0A7A, in the "WRBUR" code.
Ah. ..but what hapjjens when you try to do
burst I/O writes from ROM? FMS blindly tries to
put its goodies into those three l:tytes and call SIO.
SIO does what it is told, and FMS thinks lliat all is
OK. Except that all is no! OK! Those three bytes
did not get changed, so what was written to the disk
is garbage. And even ERAsing the file won't work.
because the sector links are badly messed up.
Crunchy. crunchy goes the disk, under worst-case
circumstances.
Now this restriction is fairly easy to get around:
one simply writes a program (in BASIC or machine
language) which writes the desired bytes to the disk
one at a time, thus preventing burst I/O. So I don't
leel that I am giving away deep, dark Atari secrets
when I give ytni an easier method to prevent burst
I/O. .Simply do either of the following:
from BUG: C A2E < 0
from BASIC: POKE 2606,0
Again, for those of you with the FMS listing,
note that what we are doing is changing the AND
#|()2 which cliecks for text mode (the read anri
write text line conunands are $05 and $09, neither
of which have bit $02 turned on) into an AND
#$00 instruction, thus fooling the REQ that follows
into thinking that FMS can't do burst I/O bccau.se
it's doing text mode I/O. Not too terribly tricky,
and it works well.
I cannot recommend that you make this patch
a permanent part of most system disks, since it
completely disables burst I/O and makes the system
load and save Illes considerably sknver. Change it,
use it, and then forget it. @
ATAHI OWIOIRS!
S0% OFF ALL SOFTWARE
Adventure Internationa] ' Avalon Hill *
Crystalware ' Automated Simulations '
Arcade Plus ' Gebelli Software ' On Line
Systems " Horizon Simulations * IDSI '
Ajtworx " C.E. Software
Order from us and get:
Free Newsletter Evaluations, Reviews!
No Club To Join No Membership Pees!
Free Catalog!
Free Charge Card Use!
Free Phone Orders (we deduct the cost of the call )
GOMFiLEtB:
Hetail ITour Cost
Crush, Crumble, and Stomp 29.95 23.95
Jawbreaker 29.95 23.95
Mouseattack 34.95 27.95
To Order Call:
C412> 235-8970
Or Write:
MIDKASTEIUJ SOFTWAHIB
Box 247 New Florence, FA 15944
Send money order, certified check, personal check (allow
two weeXs to clear ). C.O.D,
Add $2.00 shipping per order
PA residents add 6% sales tax
Prices subject to change without notice.
. . YOU THINK YOU'RE A SPACE ACE!
Can you blast through the deadly asteroid fields?
Can you survive robot space bombs?
Can you handle invisible Silurian space mines?
Can you dodge a rotating death vortex?
Can you defeat the alien battle cruisers?
GOOD LUCK CHARLEY!
You'll need luck and skill to complete your first mission at drive
level I. If, by beginner's luck, you progress to Patrolmen at drive
level II, ttie fiyper-asteroids and Silurian mines v/\\\ send you back
to trie Academy for a refresher course in "Beginning Pilot".
Sfiould Itie incredible fiappen, and you get your stiip to drive
level III, and are able to blast your way tfirough the asteroids
and mines, the space death bombs will get you— just like all
the others. If you get past the bombs, there's more, and
more, and more!
SO . . . YOU THINK YOU CAN HANDLE IT?
Try it, if you're right, you're a . . . SPACE ACE!
A great new and challenging space game by Greg Young
• Hires Graphics
• Requires 16K and all of the
potential of the AtariTM 400/BOO
• Disk/Cassette
• Joy stick
• 100% machine language
SEND CHECK OR MONEY ORDER TO:
LONDON SOFTWARE
374 Wildwood Avenue
Piedmont, CA 94611
Please add St 50 postage & handling Calif resLdenu add addtlional SI 95 lax
Alan 'too 800 IS a registered trademark of Atari. Inc
Multiple levels of play
Great Audio
Time limit options
Bonus scoring
$29.95
Ph. orders (4 Ii5) 893-1090
Visa/Mast ercharge
Dealer Inquiries Invited.
COMPUTE!
is looking for
applications
articles
on
Sinclair ZX-81,
Texas Instruments
TI-99/4A
and
Radio Shook
Color Computer,
"The Software Specialists" offer...
f THE STATE OF THE AKT^
IN COMPUTER SOFTWARE
• NUMBER STUMPER:
24K CAS. «ig.05 32K DISK 24.g5
• UTILITY PAK #1:
32K DISK «2e.8S
• UTILITY PAK n-.
32K DISK 424 flS
(PRESENTLY UNDER DEVELOPMENT!
• GAME PAK if]-.
24K CAS- 914.95 32K DiSK «19.85
AN ARCADE GAME FOR ONE OR TWO PLAYERS.
USES JOVSTICKS,
DOS UTILITIES, AUTORUN. SYS, RENUMBER. VARIABLE LISTER
AND CHANGER, AUTOMENU.
DISK-SPEED ADJUST, CONVERT DECIMAL-HEXBINARY »'S.
COLOR & SOUND PROGRAMMERS AID,
SAVE-A-SCREEN UTILITY.
SCOHEFOUR, DOTS, FIFTEEN, PLUS SURPRISE GAMEI
lA TOTAL OF FOUR GAMESI USES JOYSTICKS.
2i7TI«AaSiaTI
OFFERS YOU
UK
PROGRAMMING
•CONSULTATION
CALL OR WRITE FOR A CATALOG OF OUR
PROGRAMS AND DETAILED INFORMATION ON
OUR FREE OFFERINGS. SPECIALISTS IN SOFTWARE
FOR THE ATARI- COMPUTER. GAMES, UTILITIES
AND CUSTOM PROGRAMMING AVAILABLE.
DEALERS INQUIRIES INVITED
28 ORCHID ROAD
_LEVITTOWiM,N.Y. 11756
^(516)796-1212
SB
ADD $2.50 SHIPPING AND INSURANCE. NX RESIDENTS
ADD SALES TAX. C.O.D. OR BLUE LABEL SHIPMENT ADD'L
174
COMPUTE!
July, 1982. Issue 26
After you've written a FORTH program, you can
metncompile, leaving out words which are not a working
part of thr application.
The FORTH Page
Headless
Metacompilation
Richord Mansfield
Assistant Editor
Somehow, the prefix mela ahvays sounds both
glamorous and forbidding. Attached to a word,
mi'ta nsnall) adds a special meaning involving
"over" or "beyond" or "transformed" — it can seem
paradoxical. A metatrurk would be a truck tliat
carries other trucks. MetaKOR TH, likewise, means
using FORTH to compile itself.
"FORTH for PET." an adaptation of FORTH
by L. C C'argiie and Michael Riley, stippoits a
f^ORTH Metacompiler (for Upgrade or 4.0 BASK:
with 32K R.-XM) which can he ]Durchased separately
for $30. "FORTH for PET" itself does not require
the extra memory.
The goal of metacom]>ila(ion is to reduce
memory size or modif) FOR EH itself by retoin-
piling the entire FORTH dictionary. Obviously,
you cannot eliminate words like DUP and SWAP.
They are in the definitions of many other words
and will always be central in any working FORTH
application.
However, there arc applications which will not
need keyboard entry, disk access, or other such
normal FORTH capabilities. If you write a game
which does not in\()l\ e the disk, you cotild metacom-
pile a special FORTH yvhich does not have such
words as FLUSH, LOAD, etc.
Clear, Step-by-step Instructions
The Metacompiler's instruction booklet is written
so clearly that a relative novice in FOR EH will have
little difficulty with it. The process of metacompila-
tion is essentially straightforward and the nuunial
leads you through it, step-by-step, explaining what's
happening along the way. You load your ordinary
FOR'EH into the computer, load screen ten from
the Metacompiler disk, and it requests a target
address for a new, temporary FORTH. Since regu-
lar FORTH starts at hex $0400, you can respond
with $4000 as the start of the new version. Both
will be resident in memoi y simultaneously, but
after metacompilation, control of the computer is
passed to the upper one.
After you've indicated your target address,
you can sit back and watch the dictionary being
recreated at the new location. The words are put
on screen as they are recompiled. Or y(ju can leave
and come back about six minutes later to find twtj
PORTEEs in the computer. You'll be able to com-
municate with the upper version and it will respond
normally.
The final step is to compile back down, giving
$0400 as the target this time, and making any
changes you want to the Metacompiler's disk
screens. These changes will be reilected in the new
FORTH you are creating.
The manual takes you carefully through an
entire editing process where you create a stand-
alone "Calendar" program. This calendar applica-
tion is truly a FORTH transfigured: when run, it
u.ses DUP and other key words, of course, but it
will not recognize them from the keyboard. It can
do nothing with the disk. In fact, it understands
only the lew words that relate lo the calendar func-
tions to which it is dedicated. What's more, it's
headhss.
Removing Heads
In FORTH, there are four "fields" to an ordinary
word: the name, link, code, and parameter fields.
The "head" of a word is the name and link fields,
taken together. If a word in vour new FORTH
application wilt only be used in further definitions
and will never be independently executed, you can
type DROP-MFADS before it on the Metacompiler
disk, iliai v\ord and any words after it will be
compiled without name or link fields when the new
FOR'EH is created. To lesume head compilation,
typeC:OMPILE-HEADS.
An Excellent FORTH Adaptation
It is gratifying to find this metacompilation capa-
bility, a valuable and sophisticated technique, avail-
able on PEE/OBM computers. Ixjually pleasing is
the excellent FOR'EH implementation by the same
authors, "FORTH for PE E" ($50, 16 or 32R, Up-
grade or 4.0 B.A.SIC, with disk) to which this
Metacompiler is an optional addition.
"FORTH for PET" is a fiill VIC FORTH
system (allowing all FOR EH 79 extensions as an
option), a complete assembler, several sample
programs, many utilities, and introductorv and
reference manuals. Perhaps most attractive is the
fact that the full, powerful Commodore screen
editing system works the same way that it works in
BASIC. \'ou move anywhere fast and modify
screens with great ease. Other versions of FORTH
are sometimes enctnnbered by awkward editing
proceduies.
"FORTH for PET" and "Met.acompilerfor
FORTH" are both available from A B Computers, 525
Bethlehem Pike, Colmar, PA, 18915. @
Jutv, 1982. Issue 26
COMPUTE)
175
Ifyoii\ii' ever wanted to thoroughly document, explore,
and understand your computer's BASIC or Operating
Systems - the lech.niques and programs here are your
tools. Written for OSI, these ideas eau be modified for
ot/ier rompulers. Next montli this arlirle concludes with
add ilioiud programs and examples.
Resource Part I:
Mapping
Machine
Language
Code
T. R. Berger
Coon Rapids, MN
Have yoii e\ ei tried to document your machine
software by annotating disassemblies? Have you
ever tried to move these programs by reconstructing
assembler source listings from disassemblies? If so,
you know what a huge investment of time is needed.
This article covers a group of BASIC programs
which will facilitate regenerating fully documented
assembler source listings starting from machine
language programs in much less time than the
painful direct route.
When I undertook to write these programs, I
did not even dream how powerful they would be. I
never really anticipated regenerating a source
listing of 8K OSI Microsoft Disk BASIC. When I
realized that this task could be done, w^hat was one
simple program expanded into the four presented
here. A much modified and improved version of
the single program which started this all off is also
included here. If OS65D would allow six buffers to
be open at once, these programs could be vastly
speeded up and simplified.
These programs are written in BASIC for disk
based OSI computers. However, the programs are
carefully documented so that those using other
6502 machines with different disassemblers should
have no difficulty in copying the idea. The pro-
grams accept as input an ASCII file produced by
the OSI version of the Apple disassembler (see Dr.
Dobbs Journal, September, 1976, p. 22). The output
is a collection of ASCII files which include the
following:
1. An assembly source listing of code which
will reassemble at the same location without
further editing.
2. Equate files necessary to run the assembly
source through an assembler.
3- Separate cross reference files for each of
the following:
a. Zpage addresses,
b. Jumps and jumps to .subroutines,
c. Memory calls, and
d. Branches.
A single pass program RESOURCE S in in-
cluded for resourcing small programs. On a 48K
C8PDF it has no trouble handling OS65D. Since
only symbols and cross references are kept in me-
mory, a S2K machine should also have no trouble.
Cross reference strings in RESOURCE S are of
limited size so that the program will crash in
attempting to cover 8K BASIC. The Zpage cross
references to $AC overrun about halfway through.
Since RESOURCE S is a compressed version of the
program package presented, 1 will comment very
little on it. When there are a very large number of
cross reference strings, the program slows way
down due to garbage collection. In Microsoft
BASIC, garbage collecfion times go up approxi-
mately as the square of the number of strings in
memory (and not their size).
Run Times Approached 24 Hours
I have written this package so that hobbyists can
understand their most conunonly used language:
BASIC. A source file for 8K BASIC is colossal.
Therefore, many shortcuts are nece.s.sarv to com-
plete the resourcing task. I originally tried to en-
large RESOURCE S to cope with the job. OS65D
has only two disk buffers requiring that a large
amount of information be kept in memory for a
single program. So many strings were generated
and garbage collection time became so great that
run times approached 24 hours. Clearly this is not
the way to go. I broke the task into small pieces,
each being completed in a reasonable amount
of time.
On 8" floppies the BASIC disassembler source
($03 A 1 - $2300) takes 28 tracks (84K). Those using
minifloppies must tackle BASIC in three or more
passes, using the cross reference tables to properly
join the final product.
The final product, scattered through several
files, takes up about 36 tracks. There is no hope of
assembling the.se files without a linking a.s.sembler.
(Leroy Erickson has written such an extension for
the OSI Assembler.) Ho%vever, printout of the
source and the cross reference tables greatly sim-
176
COMPUTEI
July, 1982, Issue 26
plifies the annotation and documentation process.
After one pass of RESOURCE S over OS65D, it
was possible to reassemble OS65D at the same
location. After about two hours of editing, a file
was obtained which assembles anywhere.
Using my maps of OS65D and Jim Butterfield's
maps of BASIC, you should be able to obtain fully
documented source listings of both BASIC and
OS65D. 1 would hope to see more articles using
specific parts of OS65D and BASIC. Namely, what
are some subroutines, how do they work, how does
one use them, and how does one resource them?
The entire program package presented here is
written in BASIC. This sped implementation and
modification time. It also makes the programs
easier to understand. The price paid is runtime,
which is considerable over 8K BASIC. Efforts have
been made to optimize runtimes, especially on
inner loops. This adds steps to the process, but
significantly reduces program running times.
Of course, one must edit the files generated by
these programs. I use a group of utilities which
constitute a useful BASIC text file editor and
proccs.sor. I will describe these utilities in a future
article.
The three most useful utilities are a transfer
program to move large text files around, a print
program to output large files to a printer, and a
fast sorter to sort symbol tables. A further useful
addition is a large text file single pass character-
oriented line editor.
How It Works
The first program (PASS 1) takes the disassembly
listing (which I will call SOURCE) and compresses
it into a scratch file (which I call SCRATCH). The
main working file is SCRATCH. It is about 25%
smaller than SOURCE and serves as input to the
other programs. A typical line of SOURCE looks as
follows:
1A3D BDUBO LDA $B011,X.
In SCRATCH this same line would be:
1A3D LDA HHBOU.X.
The code field has been eliminated and $B01 1 has
been changed to a six letter symbol. All four digit
operands fXXXX are changed to six letter symbols
HHXXXX, which is the maximum size for symbols
in OSI's Assembler. Except for immediate oper-
ands, two digit operands $YY are replaced by six
letter symbols HHZZYY. Further, the first H in
every operand is always aligned as the eleventh
letter in a line. BASIC is much too slow to search a
line for a symbol. Aligning symbols makes them
easy to find when editing. For example,
MID$(IN$,11,6)
removes a symbol from a line IN$. The 'H' in
position eleven distinguishes a symbol. The 'Z' in
position thirteen distinguishes a Zpage reference.
A line in SOURCE
1A40 FF ???
would appear in SCRATCH as
1A40 .BYTE $FF.
This step makes the resource file assembler ready.
Bad disa.ssembiy of opcodes must be fixed by editing
the final file if a true source die is needed. In par-
ticular, tables and text are not resourced correctly,
only made assembler-ready.
The first program also builds a table of two
byte operands (which I will call SYMBOL). SYM-
BOL is used in P.\SS 2 to generate labels and an
equate file of two byte operands. Since SYMBOL is
searched repeatedly in PASS 2, it must be sorted.
Sorting SYMBOL means a fast binary search can
be used which is many times faster than a sequential
search. (P'or BASIC, this addition reduced line
process times in P.ASS 2 from about 5 seconds per
line to less than 1 second per line.) Since BASIC
requires 800 symbols, this search method cuts
hours off PASS 2. Accordingly, PASS 1 keeps a
sorted symbol table.
PASS 2 generates the resource file (which 1
call OBJECT). It reads one line of SCRATCH:
1A3D LDA HHBOll.X.
It searches SYMBOL for 1 A3D. If 1 A3D is found,
a numbered line
10000 HH1A3D LDA HHBOIl.X
is output to OBJECT. Since I A3D is now defined
by a label, it is marked as 'u.sed' in SYMBOL. If
1 A3D is not found, a numbered line
10000
LDA HHBOll.X
is output to OBJECT. After OBJECT is complete,
the unmarked symbols in SYMBOL are operands
which are not defined by labels in OBJECT. Ihus,
an equate file (which I call EQUATE) is written
using these unmarked terms i'rom S\'MBOL. For
example, if I A3D is unmarked, it would be written
to EQUATE as a numbered line
5000 HH1A3D = $1A3D.
Except for Zpage labels, OBJECT and
EQUATE are ready for the assembler.
PASS 3 generates the various symbol tables.
The symbols are picked out of SCRATCH along
with their addresses. A symbol HHXXXX is stored
in a string SS$(I) as XXXX. A check is run to see if
the symbol already appears in the table. If it does
not, the counter SN is incremented and the symbol
is added. This list is stored as a sorted table.
Suppose that HHXXXX appears in Line YYYY
and that SS$(I) = XXXX. Then UYYYY is ap-
July, 1982, Issue 26
COMPUTEI
177
pended to the right hand end of SA$(I) where U is
chosen to give information about the opcode on
line YYYY. Some thought went into the choice of
U. In the branch table, ilie middle letter of a branch
instruction comes closest to distinguishing all
branches. Thus U is the middle letter of the opcode.
Again in the JMP and JSR table, the middle letter
distinguishes JMP from JSR. Thus U is M or S in
this case. The first letter of the opcode is chosen
for the memory table.
In decoding programs, I have found that the
Example 1.
10000
.BYTE $17
10010
LDA
#$16
10020
STA
HHZZC7
10030
HH18DD
JSR
HH18ED
10040
JSR
HH19D1
10050
STA
HHZZC5
10060
STY
HHZZC6
10070
DEC
HHZZC7
10080
BMI
HH1922
10090
BNE
HH18DD
10100
HH18ED
JSR
HH19BC
10110
LDA
(HHZZC5,X)
10120
TAY
10130
LSR
A
10140
BCC
HH1901
10150
LSR
A
10160
BCS
HH1910
10170
CMP
#$22
10180
BEQ
HH1910
10190
AND
#$07
10200
ORA
#$80
10210
HH1901
LSR
A
10220
TAX
10230
LDA
HH17A5,X
10240
BCS
HH190C
10250
LSR
A
10260
LSR
A
10270
LSR
A
102B0
LSR
A
10290
HH190C
AND
#$0F
10300
BNE
HH1914
10310
HH1910
LDY
#$80
10320
LDA
#$00
10330
HH1914
TAX
10340
LDA
HH17E9,X
10350
STA
HHZZCl
10360
AND
#$03
10370
STA
HHZZC2
10380
LDA
HHZZC8
103 90
BNE
HH1923
10400
HH1922
RTS
10410
RH1923
TYA
10420
AND
#S8P
10430
TAX
10440
TYA
10450
LDY
#?03
10460
CPX
#5 8A
10470
BEQ
HH1939
104 80
LSR
A
10490
BCC
HH1939
10500
LSR
A
10510
LSR
A
most important fact to know about Zpage opcodes
is their addressing mode. That is, is an opcode
indexed or not? Thus, U is the extreme right hand
symbol of the disassembly line. This includes ), X,
and Y. It is not possible from this to tell whether
the Y means indexed or indirect indexed. However,
given the simplicity of this approach, it is adequate.
If SA$(I) becomes loo long, it is written to a
cross reference file and SA$(I) is emptied. (In
RESOURCE S this step is not performed, the
program bombs when SA|(I) becomes too long.)
These "long strings" will appear out of order in the
file. (The first few cross references may be out of
order.} The symbol table can be resorted by most
any sorting program. As it stands, the table is
"almost in order."
PASS 4 generates the Zpage equate file which
I call ZEQUATE. This is done using the Zpage
cross reference file generated in PASS 3, The file
resembles the EQUATE file.
In resourcing a large program, there will not
be enough room on one disk for all the files gener-
ated. SCRATCH, and various other files may be
moved using a transfer utility. Symbol and cross
reference files may be sorted using a sort utility.
Final files may be printed using an output utility.
Example 1 shows the OBJECT file (resourced
assembly language) for the beginning of the disas-
sembler in the Extended Monitor. Example 2 gives
the two equate files. Example S gives the output
from the Assembler using these three files. Example
4 gives the four cross reference tables. The first
address in each row is the symbol. The other ad-
dresses following are the cross references, with
some indication as to opcode.
How To Use It
STEP 1) Creating a SOURCE file.
If you plan lo resource BASIC, you must
move the Extended Monitor since it overlays part
of BASIC. In another article, I will give explicit
instructions on how to do this. I find it handy to
have the Extended Monitor available while BASIC
is resident.
After trying several methods, I've decided that
the following is the easiest way to generate a
SOURCE file. It uses the disk output capability of
OS65D. The code you are re.sourcing should not
overlay the disk buffer used. (Video with polled
keyboard is assumed; otherwise, recheck the I/O
flags.)
a) Initialize a fresh disk,
b) Copy the directory Track D onto this disk
using OS65D's copy utility (D is Track 8 on 8"
floppies).
c) Create files for all empty tracks except
Tracks 0 and D. Delete all directory entries on
175
COMPUTE!
Julv. 1982. Issue 26
tlie new disk.
d) Load the machine language program to be
resourced.
e) Load and run the Extended Monitor.
We must now set all the various pointers for a
disk buffer. To resource B.'^SIC you need a very
large file. Let the first available track be N where
the directory is on Track N-B (N = 9 on 8" floppies).
f) Choose a first track number N for your
SOURCE file. Let M be the last track number
on the disk (M = 76 on 8" floppies). Do not
clioose N so liial either N = 0 or the directory
track is included in the range of N to M.
g) Using the "at" (@) sign command, set the
following buffer values. (These are valid for
OS65D V3.2, i.e. 8" fioppies. The correct
values for minifloppies are given in the OS65D
User's Guide.)
m VALUE
BUFFER START ADDRESS
BUFFER END ADDRESS
FIRST TRACK OF FILE
LAST TRACK OF FILE
CURRENT BUFFER TRACK
DIRTY BUFFER FLAG
ADDRESS DISK OUTPUT
(CURRENTBUFIERADDR.)
h) Mount the fresh disk.
I) From EM type (i.e. turn on disk output)
!10 ,22 <retum>.
The next few steps write directly to the disk
without error correction. If you make an error, per-
form step I) and restart at step g. Presumablv vou
know the start ($XXXX) annd the finish (SYYYY)
addresses of the code to be resourced. For BASIC
these are $XXXX = $()3A1 and $YYYY = $2300.
For OS65D these are $XXXX = $2336 and $YYYY
= $2E 1 E. For the ROMs these are $XXXX = $FDOO
and$YYYY = $FFFA.
j) Commence disassembly with
QXXXX< return >.
k) Put your finger on LINEFEED. Hold it
there until $YYYY has been disassembled.
Then hit RETURN.
All but the last track of the SOURCE file is on
the disk. The last track is still in the buffer. This last
part is also missing an "end of file" marking. The
next few steps turn off the disk output long enough
to make corrections, then turn it back on to write the
final track to the disk.
The next step turns off disk output by creating
a syntax error, and puts a mark to help find the end
ADDRESS ($)
ADDRESS tDI
VA
2326
8998
7E
2327
8999
31
2328
9000
7E
2329
9001
3D
232A
9002
N
232B
9003
M
2320
9004
N
232D
9005
0
23C3
9155
7E
23C4
9156
31
of the SOURCE file.
I) Type
!XIT < return >.
m) Search for the end of the file
W!XIT>317E,3D7F.
If all has gone well, you will receive a message
(*) VVVV/21
where WW is the address of ! in the expression
!XIT. If you do not receive such a message, it is pos-
sible (but unlikely) that a "disk write" occurred in the
middle of the word IXIT. Co back to step g) and
Stan again. When you reach step k), hit RETURN
five times instead of just once, then proceed. If you
do not receive the message (*), sometliing is definitely
wrong somewhere. Start a careful search (Beware:
some values given only work for 8" floppies).
n) Using quotes and "at" check the following
VVVV/21 "!
WW +1/58 "X
WW + 2/49 "I
WW + 3/54 "T
o) Make the following change.
VVVV/21 OD
Now the "end of file" marker is properly in-
stalled. Next we write the buffer to the disk.
p) Make the following pointer change.
23C3/YY 7E
23C4/WW 3D
q) Write down the value TK
232C/TK
r) 'Fype
!IO ,22 < Return*
The entire SOURCE file is on the disk. It
starts on Track N and ends on Track IK. We must
now create a directory entry for this file.
s) Load BASIC and CREATE, but do not run
CREATE. (You may need a different disk to
do this.)
t) Delete line 20290 (which would erase all the
work you have done). It reads:
20290 DISK!"IN " + T$:DISK!"SA " + T$ + ",1 =
317/" + P$
u) Run CREATE and name the SOURCE file
on your new disk.
STEP 2) Create a SCRATCH and SYMBOL file
entry.
These files must be on the same disk as
SOURCE. Be sure to reload CREATE so that line
20290 is not missing. SCRATCH can be about 25%
smaller than SOURCE. SYMBOL can be 1-2 tracks.
On 8" floppies, 8K BASIC needs two tracks for
July, 1982, Issue 26
COMPUTEI
179
SYMBOL (4K file size). You may put these files
anywhere as long as they do not overlap the
directory track. Track 0, or the tracks used by
SOURCE.
STEP 3) PASS I.
Run the first resource program. Prompting
will tell you what to do. The new disk must be in
the drive throughout the run. The screen will
display the current status. On large programs, be
prepared for several-minute waits for garbage
collection. A five minute wait between screen data
lines probably means there has been a system crash.
This program will not work with ROM BASIC
since the garbage collector is defunct. (See
PEEK(65}, March 1980, p. 3 for a fix.)
The SOURCE, SYMBOL, and SCRATCH file
may fill a disk, so you may have to move some files
to other disks. SOURCE is no longer needed, but
should be saved in case of trouble. Symbol is needed
for PASS two and SCRATCH is needed for PASSes
two and three. Using a transfer udlity vou may
move SCRATCH and SYMBOL to a new disk.
STEP 4) PASS 2.
The second resource program generates an
EQUATE file and the resourced assembly listing
OBJECT. Create such files on a disk containing
SCRATCH and SYMBOL. EQUATE need not be
large, usually much less than a track. OBJECT
should be slightly larger than SOURCE.
The next step creates all the cross reference
tables. Each table needs its own file. SCRATCH is
the input file. The branch table will probably be
the largest file.
STEP 5) PASS 3.
Repeat this step until all cross reference tables
are complete. Only Zpage cross references are
essential. However, I find the Zpage and JSR tables
the most useful. You may wish to sort these tables,
even though they are "almost sorted."
STEP 6) PASS 4.
Create the Zpage equate file: ZEQUATE.
Input to this program is the Zpage cross reference
file. This step is the final one which creates the list
of Assembler Zpage equates.
Any of the files generated may be dumped to
a printer using a printer utility. The process is
much simpler than it sounds. The single pass re-
source program eliminates most steps if only small
programs are being resourced.
Moving ASCII Text Files To The Assembler
For small programs, the resource can actually be
assembled by the OSI Assembler. The three files
(OBJECT, EQUATE, and ZEQUATE) must be
merged and the program counter location given
(10* = $XXXX).
The resourced files are ASCII text files with
an end of file (EOF) marker:
XIT < return >.
Since OSI's Assembler does not keep an ASCII
file, more is needed. We must transfer the disk text
files into the Assembler/Editor. In OS65D it is easy
to reset output fiags with:
lO ,02.
However, only one input is recognized and, if this
is not the keyboard, then keyboard input is dead.
During disk input, the keyboard is disabled. In
particular, OS65D has no way of recognizing the
end of a file except by an operating system error.
This is a definite deficiency in OS65D. When an
operating system error does occur, theTO flags are
properly reset to default values.
If a file is on Tracks 2 and 3, inputing these
tracks will result in a system error as soon as Track
3 is finished. The trouble is that the actual file may
end halfway through Track 3. The rest of Track 3
may contain absolutely destructive information,
such as Assembler commands or operating system
commands. My favorite is the following. The ASCII
character "left bracket" occurs as input opening
the Indirect File. This file fills up memory, wiping
out everything in the way. It eventually reaches the
disk addresses. You hear a thunk and the disk goes
dead. If input continues, it next reaches the screen
memory filling the screen with jazzy characters. It
goes on to the color memory, tone generator, etc.
You've probably had this occur and wondered
what happened. It's just the Indirect File, filing all
the garbage away.
One solution is to remove the destructive
information on the track. Another simpler one is
to create an operating system error at the end of
the file, in this case, midway through Track 3.
Input errors to the OSI Assembler do not cause
the lO flags to be reset. We must be more subtle
than just having an input error. If E<return> is
sent to the Assembler, it exits to the operating
system. In the operating system command mode,
any line which is not a legal command creates a
syntax error. For example, another E<return>, will
do the job. The following changes to PASS two and
PASS four will prepare files for entry into the
Assembler. Add the following lines:
PASS Two
642 PRINT #7,"E"
644 PRINT #7,"E"
842 PRINT #7,"E"
844 PRINT #7,"E"
PASS 4
472 PRINT #7,"E"
474 PRINT #7,"E"
There is yet another problem. In their normal
180
COMPUTE]
July, 1982, Issue 26
positions, the disk buffers occupy the same space
as program memory. This problem can be solved
by moving the buffers. U.se the following steps to
load first the file ZEQUATE, .second EQUATE,
and third OBJECT into the Assembler.
a) Load and run the Extended Monitor.
b) Suppose the file we wish to load starts on
Track N and ends on Track M. Perform STEP
1) g) from "HOW TO USE IT." Be sure to use
the values given below (or larger values where
vou have RAM).
ADDRESS (S)
ADDRESS (D)
VALUE
2326
8998
00
2327
8999
50
2328
9000
00
2329
9001
5C
232A
9002
N
232B
9003
M
232C
9004
N-1
232D
9005
FF
23AC
9132
00
23AD
9133
5C
ADDRESS MEMORY
BUFFERED INPUT
Note that 232C, 232D, 23AC, and 23AD have
strange values. These values track the disk into
loading the first track of your (ile into memory.
Otherwise you would have to do that job separately.
c) If you have already loaded the first file, skip
this step. Initialize the Assembler.
d) Re-enter the Assembler.
e) Get input by
!IO20 <return>.
f) Repeat a) - e) until all files are loaded.
Your files are now merged in the Assembler. Be
sure to inspect them carefully before assembling.
Remarks, Refinements, Additions
Resource will execute on 8K BASIC in a reasonable
amount of time. The longest pass (PASS One) will
run slightly less than an hour on a 1 MHZ machine.
This package of programs is. in a sense, incom-
plete. Using the cross reference tables, one could
give mnemonic names to all of the various labels and
equates. These could be entered into a file. Then
one extra pass over OBJECT could exchange
address labels with mnemonic labels.
A big file line editor utility could be added to
edit any one of the files created. If tables are known
at disassembly time, they can be edited into
SCRATCH. Incorrecllv disassembled code could be
corrected. These steps could be performed also on
SCRATCH or OBJECT.
If table locations are known in advance, disas-
sembly can be cleaned up considerably by replacing
all table bytes with $FF (or anv other value not equal
to a 6502 opcode). Then, all tables will appear in the
resource as a sequence of lines: 10000 .BYTE$FF.
Using an editor, it then would be a simple task to
replace each $FF by its correct value. I used this
procedure on BASIC.
OS65D cannot be changed in this way since it
will crash. But there is a simple solution. Move
OS65D from addresses 2XXX to addresses, say
5XXX. When SCRATCH and SYMBOL are com-
plete, go through them, changing the leading 5's
back to 2's. A program to do this is simple to write.
SYMBOL must be resorted and repetitions deleted.
This way, I was able to use the trick with $FF in
tables to obtain an accurate resource of the code in
OS65D.
A simple, but useful, utility would be a com-
menter. Such a utility would allow the user to add
comments to the end of each line of the resourced
file or to insert lines into the file. I have used this
technique to produce the various listings in this
article. I hope to present a future article on this
editor.
Even though I am careful to fully document
the machine software 1 write, 1 still find it useful to
run the resource program over my machine pro-
grams. The cross reference files often reveal infe-
licities and logical inaccuracies.
I am still improving these programs. If you
think of a nice enhancement, I'd be glad to hear
about it.
Example 2.
1000
1010
; EQUATE FILE
1020
;ZPAGE
1030
/
1040
HHZZCl = $C1
1050
HHZZC2 = $C2
1060
HHZZC5 = SCS
1070
HHZZC6 = $C6
1080
HHZZC7 = $C7
1090
HHZZC8 = $C8
1100
*
>
1110
•
1120
;TWO BYTE
1130
t
1140
HH17A5 = S17A5
1150
HH17E9 = $17E9
1160
HH1939 = 51939
1170
HH19BC = 519BC
1180
HH19D1 = S19D1
Example 3.
10 18D8
* = S18D8
1000
; EQUATE FILE
1010
;
1020
fZPAGE
1030
*
t
1040 00C1=
HHZZCl = 5C1
1050 00C2=
HHZZC2 = SC2
1060 O0C5=
HHZZC5 = $C5
1070 00C6=
HHZZC6 = $C6
1080 00C7=
HHZZC7 = 5C7
1090 00C8=
BHZZC8 = 5C8
July, 1982, Issue 26
COMPUTE!
181
1100
1110
1120
1130
1140
1150
1160
1170
1180
10000
10010
10020
10030
10040
10050
10060
10070
10080
10090
10100
10110
10120
10130
10140
10150
10160
10170
10180
10190
10200
10210
10220
10230
10240
10250
iTl-lO BYTE
17A5 =
17E9=
1939=
19BC=
19D1 =
18D8
18D9
18DB
18DD
18E0
18E3
18E5
18E7
18E9
18EB
IQED
18F0
1BF2
1BF3
18F4
18F6
18F7
18F9
18FB
18FD
18FF
1901
1902
1903
1906
1908
10260
10270
10280
10290
10300
10310
10320
10330
10340
10350
10360
10370
10380
10390
10400
10410
10420
10430
10440
10450
10460
10470
10480
10490
10500
10510
1909
190A
190B
190C
190E
1910
1912
1914
1915
1918
191A
191C
191E
1920
1922
1923
1924
1926
1927
1928
192A
192C
192E
192F
1931
1932
17
A916
85C7
20ED18
20D119
85C5
C4C6
C6C7
3037
DOFO
20BC19
A1C5
A8
4A
90 OB
4A
B017
C922
P013
2907
0980
4A
AA
BDA517
B004
4A
4A
4 A
4A
290F
DO 0-1
A080
A900
AA
BDE917
B5C1
2903
85C2
A5C0
DOOl
60
98
298F
AA
98
A003
E08A
FOOB
4A
9008
4A
4A
Kni7A5
nill7E9
Hill 93 9
HH19BC
HH19D1
HH18DD
= $17A5
= $17E9
= 51939
= 519BC
= S19D1
.BYTE 517
LDA #516
STA HHZZC7
JSR HHlfiED
JSR HH19D1
STA HHZZC5
STY HHZZCe
DEC HHZZC7
BMI HH1922
BNE HH18DD
HH18ED JSR HH19BC
LDA (HHZZC5,X)
TAY
LSR A
BCC HH1901
LSR A
ECS HH1910
CUP #522
BEO HH1910
AMD #5 07
ORA #5 80
HH1901 LSR A
TAX
LDA HH17A5,X
BCS HH190C
LSR A
LSR A
LSR A
LSR A
HH190C AMD #SOF
BME HH1914
HH1910 LDY #580
LDA #500
HR1914 TAX
LDA HH17E9,X
STA HHZZCl
AMD #503
STA HHZZC2
LDA RHZZC8
BNE HH1923
HH1922 RTS
HH1923 TYA
AND #$8F
TAX
TYA
LDY #503
CPX #5 8A
BEQ KFa939
LSR A
BCC HH193 9
LSR A
LSR A
Example 4.
. CROSS REFERENCES
. Z PAGE
CI
C2
C5
C6
C7
C8
1918
191C
18E3
18E5
18DB
191E
)18F0
18E7
. JMP & JSR
18ED S18DD
19BC S18ED
19D1 S18E0
. MEMORY
17A5 H903
17E9 L1915
BRANCH
18DD
1901
190C
1910
1914
1922
1923
1939
M18EB
C18F4
C1906
C18F7
N190E
ra8E9
M1920
E192C
E18FB
C1S2F
PASS 1
RESOURCE 1 ** BUILD SCRATCH AND
SYMBOL FILES **
TVJO BUFFERS ARE REQUIRED
100 REM *** RESOURCE 1 ***
110 REM T.R. BERGER 11/80
120 PRINT
130 PRINT"RESOURCE ** STEP 1 - BUILD
SCRATCH AND SYMBOL FILES"
140 PRINT
. ** REMOVE COMMA AND SEMICOLON **
150 POKE 2972,13:POKE2976,13
*
160 INPUT"SOURCE FILENAME" ; SFS
170 INPUT"SCRATCH FILE NAME";JF5
180 INPUT"SYMBOL FILE NAME", -SMS
190 PRINT: INPUT"NUMBER OF SYMBOLS", -NS
. ** DIMENSION SYMBOL AND POINTER ARRAYS
**
200 DIM SS5(NS) , V(NS)
** MAIN PROGRAM **
162
COMPUTEI
July. 1982. Issue 26
210 DISK 0PEN,6,SF?
220 DISK OPEN,7,JF5
. ** LOOP BACK HERE **
230 INPUT #6,IN$
240 IF IN?="XIT" THEN590
250 IF LEN(IN?)<15 THEM230
** ADJUST SOURCE, PICK UP SYMBOLS **
A1$=XXXX ADDRESS
A2?=0PC0DE +
A3 5=OPERAND (SYMBOL)
A4?=ADDR MODE
OU$=A15+A25+A35+A4?
IN?=INPUT FROM OSI DISASSEMBLER
60 A3$="": A4$=""
** GET ADDRESS **
270 A15=LEFT5(IN$,4)
** DO ERRORS **
280 IFHID?<IN?,13,1)="?"THENA25=" .BYTE ?"
+MID$(IN$,6,2) :GOTO550
** DO REFORMATTTING **
** ELIMINATE END SPACES **
290 IN5=HID$(rMS,12) : L=LEN(IN9)
300 IF MIDS(INS,L,1)=" " THEN L=L-1 : GOTO
300
310 IN?=LEFT5(IN?,L)
. ** DO IMPLIED AND ACCUMULATOR ADDRESSI
NG **
320 IF L<7 THEN A25=IN$: GOTO550
«
. ** DO IMMEDIATE ADDRESSING **
330 IF MID${IN5, 6, !)="#" THEN A25=IN?:
GOTO550
. ** ADJUST OPERAND POSITION **
340 IFHID? (IN5,6,1)="?"THENK=7:A2S=LEFT?(
IN?, 5)+" HH":GOTO360
350 K=8: A2 S=LEFT$ ( IN? ,6) +"HH"
. ** Z PAGE CHECK **
360 M=K+2
. ** DO Z PAGE OPERANDS **
370 IF M>L THEN A35=RIGHT? (IN? , 2) : A2?=A2S
+"ZZ": GOTO550
** Z PAGE, STRIP ADDRESS MODE **
3 80 IF MID?(IN?,H,1)> V" THEN4 00
390 A3$=MID$CIN?,K,2) : A2?=A2 5+"ZZ " : A4$=
MID? (IN?, H) : GOTO550
! ** TWO BYTE OPERAND CHECK **
400 M=K+4
. ** DO TWO BYTE OPERANDS **
410 IF M>L THEN A3S=RIGHTS (IN? ,4) : GOTO430
** TVJO BYTE, STRIP ADDRESS MODE **
420 A3?=MID?(IM5,K,4) : A4 S=HID$ ( INS ,M)
** PUT SYMBOLS IN TABLE **
** SEARCH TABLE FOR SYMBOL **
** THIS IS A BINARY SEARCH **
430 L=0:R=SN
** SYMBOL NOT FOUND, INSERT IT **
440 IF L>R THEN490
450 H=INT( (L+R)/2)
** SYMBOL IN TABLE SO QUIT **
460 IF A3$=SSS (V(M) > THEN550
470 IF A3S>SSS(V(H) ) THEN L=M+1 : GOTO440
480 R=M-1: GOTO440
** ADD SYMBOL **
4 90 SN=SN+1: SSS(SN)=A3?
** POINT TO ITS PROPER POSITION IN ORDE
RING **
500 IF L=SN THEN540
510 FOR I=SN-1 TO L STEP -1
520 V(I+1)=V(I)
53 0 NEXT I
540 V(L)=SN
. ** GENERATE LINE FOR SCRATCH FILE **
550 OU$=A15+A2S+A35+A4?
560 PRINT tt7,0U?
570 PRINT OUS
580 GOTO230
. ** LOOP BACK NOW **
. ** CLOSE SCRATCH AND SOURCE FILES **
590 PRINT #7, IN?
600 DISK CLOSE, 6
610 DISK CLOSE, 7
** END OF MAIN PROGRAM **
** WRITE SYMBOL FILE **
620 DISK OPEN,7,SH5
, ** WRITE SYMBOLS IN ORDER **
630 FOR 1=0 TO SN
640 PRINT #7,SS?(V(I) )
650 PRINT SSS(V(I) )
660 NEXT I
670 PRINT i7,"XIT"
680 DISK CLOSE, 7
** OUTPUT DATA **
690 PRINT:PRINT
700 PRINT TAB (9) SN" SYMBOLS USED"
710 PRINT TAB (10) "SCRATCH FILE: "JF?
720 PRINT TAB (10) "SYMBOL FILE: "SM?
730 PRINT:PRINT TAB(IO) "PASS 1 COMPLETE"
740 PRINT:PRINT:END
July. 1982. Issue 26
COMPUTEI
183
Review:
Caverns Of
Mars
Charles Brannon
Editorial Assistant
Caverns of Mars is a new action-packed game from
Atari, Inc. Originally sold through the Atari Pro-
gram Exchange (APX), Caverns of Mars is now
available through dealers.
The object of the game is to maneuver your
spacecraft into the depths of the planet Mars. As
you penetrate the five layers of defenses you can
blow up fuel silos (to provide additional fuel for
your ship), Martian missiles, and "spy stations" that
supposedly warn the Martian headquarters of your
approach.
Your first challenge is to weave your way
through the twisting subterranean (submartian?)
tunnels. The screen continuouslv scrolls upward,
so you move left and right mostly, althougli your
craft can also move vertically. When you press the
fire button on the joystick, your craft shoots twin
photon torpedoes that detonate any target they
contact.
After surviving these levels, you face an armada
of Martian spacecraft. They don't fire at you; ihey
just try to overwhelm you with sheer numbers,
forcing you to dodge them and fire finiously to
avoid a fatal collision. If vou can make it past this
defense, you slowly descend into the very center of
the Martian stronghold, where vou'l! find a giant,
glowing, egg-shaped bomb. By landing on it, you
"arm" it, and the timer starts ticking at 30 seconds,
29, 28, 27... The destruction of the base is inevitable,
but wwr survival is at stake too. If you don't escape
from the Martian base before the time is up, you
are ruined in a brilliant orange explosion. Assuming
that you make it out (not very likely in your first
games), you watch the explosion lighting up the
mouth of the cavern, and you can then valiantly
enter... cavern two.
Each new cavern is progressively harder —
most noticeably when making your escape - you
ascend twice as fast, making a collision with the
"ceiling" rather likely. I've played the game for a
week, and I still can't escape Cavern two.
You get five ships, each with 99 imits of fuel.
Here's the catch — if you run out of fuel, your ship
explodes. It is not uncommon to meet this fate just
moments before arming the bomb, or before rising
triumphantly to the surface. If your ship blows up
in a certain level, you have to start over at the
beginning of the level.
The graphics are impressive. Apparently, the
game is constructed using a custom character set in
the special four-color IRG graphics mode (a rather
unexploited feature of the Atari until now). Most
of the animation is performed with vertical fine
scrolling, and the ship is a player. It also uses a
modified display list to show your status, and I
think it even uses display list interrupts. All in all,
an excellent use of the Atari's graphics capabilities.
Caverns of Mars is currently only available on
diskette. You'll also need a joystick.
A curious feature of the program is that it
names its skill levels as Star Raiders does: Novice,
Pilot, Warrior, and Commander. Will Caverns of
Mars replace Star Raiders in the hearts of Atari
space-game fans? If so, we may soon hear a new
phrase: "Old Star Raiders never die, they just
move to Mars..."
Caverns Of Mars
Available through dealers.
$39.95 ©
CRT'S • PRINTERS • TELEPRINTERS
•NEW*
DEC LAIOO
Dual Mode
Matrix Printer
CALL FOR PRICE!
•LOW*
Letter Quality
DIABLO 630
$1949.00
*NEW*
3M WHISPER
WRITER
•TWX
• TIME SHARE
• Comparer Terminal
iA
CALL FOR OUR LOW PRICES ON
NEC, QUME, ANADEX,
TELEVIDEO, DEC, T.I.,
TELETYPE, DIABLO, C.ITOH
TOLL FREE (800) 854-6028
SAVE ON
PREPAID
ORDERS
I
MASTER CARD
VISA
ACCEPTED
C.O.D
REQUIRES
15% DEPOSIT
FOR ORDERING
INFORMATION
PLEASE CALL
MICSOMML
PO Box 3297
Santa Ana. CA<>2703
Phone. 714 731-4338
TWX: 910 595 1146
1fcl
COMPUTil
July, 1982, Issue 26
Review:
TWo Programs
From The VIC
6 Pack
Harvey B, Herman
Associate Editor
Car Chase
This is a clever game whicli my kids rated 8 (out of
10). There are two cars {the blue one is yours)
traveling in opposite directions in a square, four-
lane track. The object of the game is to score the
most points !x'f ore you crash into the other car.
Vou can change lanes or speed up or slow down U)
a\'oid a collision. Points are scored by riding over
dots (and later diamonds) on the tracks. This game
is ver\' similar to the PET ]>rogram XAR sold by
CMr.mr niaga/.inc.
Wc (my kids and I) parlicularh' liked several
features of the BASIC game, dolor and sound are
integrated into the program. Effective use of a
custom character set makes the track layout mucli
nicer than ii Only the standard characters had been
used. The other car is smart and you must be on
vour toes to avoid a crash. To score well vou must
change speeds at appropiiatc times or you're stuck
in the wrong lane, headed foi" disaster.
The one featiu'c I did not like (and this did
not seem to bother my kids) is that the keyboard is
used as the car controller. 1 prefer a joystick or the
number pad on the old PE Ts. The "J" and "K"
keys used lo change lanes arc close together and I
was forever confusing which was "move in" and
"move out." You don't have lo think as much witii
a joystick.
A helpful hint: the instructions say not to use
Car C'hase with anv memory expansion in place.
BullfcathersI II you have addecl the 3K memory
expansion a special load sequence is necessary.
Type:
POKE 44,16
POKE 4096,0
NEW
LOAD
Before loading other programs, POKE location 44
back to normal or turn the VIC^ off and on.
Blue Meanies From Outer Space
This is an Invaders-like game which my kids rated
6 (out of 10). The blue meanies (frowning faces)
are dropping iVom the skies trying to knock out
your protected power cells inside your starbase.
You are able lo blast them with fixed laser guns as
they fall erratically. Points are added when you kill
a meanie or deducted if you hit your own supply
ship which is coming to recharge youi' energy. You
must have energ)' to fire )our weapons. Energy is
lost when shooting and for various other operations.
If the supply ship makes it, you gel an energy
bonus. It is possible to repair flamage (holes in
your starbase) using a robot, bm at the cost of
energy. When the meanies reach the power cells,
the game is o\'er.
This BASIC game, like Car Chase, is consider-
ably enhanced by good use of color, sound, and a
custom character set. It was fun to shoot the
meanies, but it would have been even more fun if
they were a little smarter. (However, the instruc-
tions do promise "meaner meanies'" after 20 are
shot.) Again. I prefer a joystick to the u.se of the
keyboard for game control. I gel confused if the
required actions are not reilexive. My kids com-
mented that the instructions for the repair robot
^vere not clear and they did not care for negative
energy or a suspended robot. I believe they have
been spoiled by playing Invaders on the PET. Blue
Meanies is a good program, but it doesn't quite
match up to lliat very good simulation of the video
arcade game.
Note: i( you have added a SK mcmorv expan-
sion, use the same trick as above ibr Car Chase to
LOAD Blue Meanies.
Commodore Business Alachhti's
681 Moore lid.
KingofPrifisia, PA 19406
$^3.95 (for all 6) ®
*VIC-20*
FROG
Take contra! of an animated 1ly zapper.
Requires NO extra equipment.
... Each $T7.95 cassette ...
P.O. Box 351 15 Phoenix, A2 85069
GAMES FOR THE PET ALSO AVAILABLE
Review:
SoftBox -
CP/M For PET/CBM
Richard Mansfield
Assistant Editor
A considerable amount of" software requires the disk operating system
known as CP/M. Originally developed in 1973, it has since become an
essential part of many word processor, accountins^, data base manager
and oilier commercial software products. CF/M means "(Control
Program/Monitor" and was intended for use with tlie 8080 and Z8()
micro|3roccssors. "SoftBox," maniifactmed by Small Systems En-
gineering, however, allows you to use CP/M-based software packages
on the PET/CBM computers.
Attached between your PET and disk drive, this "inlerfacc-
conipLiter" contains 64k RAM, a Z8() chip, IEEE and RS-232 inlerfaccs
with software-defmable baud rates, and a Corvus hard disk interface.
The unit will work with any PET/CBM using Upgrade or 4,0 B.4SIC
and 8K RAM, An optional cassette program can be used with Original
PETs. Any combination of from one to eight Ckimmodore floppy disk
drives (2040, 3040, 4040, or 8050) may be attached, resulting in up lo
a potential eight megai>ytes mass memory available at one lime. Memory
can be further increased by attaching Corvus hard disk chives. A total
of 80 megabytes is possible.
Simple To Set Up
Adding CP/.M lo youi' PET takes only a few minutes. Vou plug a stan-
dard PET-lo-IEEE cable between the SoftBox and your disk drive,
(Another of these cables goes from the drive to the PET.) When you
power-up die ihree iniits. everything is normal and, in fact, you can
work with the computer and the disk drive as if SoftBox were not
connected.
For CP/M, you place the supplied disk (CP/M Version 2,2) into
Drive zero, LOAD, and RUN it. That's it. PET is now under the control
of CP/M. The disk contains a variety of CT/M luililies, special C'orvus
files, and a SoftBox memory test diagnostic program.
If you've not worked with CP/M, the SoftBox User's manual is an
excellent introduction. It takes you through the major CP/M
commands, stcp-by-step, and clearly demon-
strates their uses and terminology. Special
connnands allow vou lo control the PET
screen (Lip]5er/lowercase, graphics/texl), the
TIS function, and, when you want to return
to normal PET BASIC, simply type "cold"
and you're back in the C'onmiodore.
And for the more advanced user, several
appendices provide technical information,
a map of Sol'tBox's memorv, suggestions
on modifying CP/M itself, and I/O details.
SoflBox, $,S'95
Small Systems Engineering
222 B View Sireel
Mountain View, CA 94041
THE DATA HANDLER
for VIC
A word processor and catalog
program for the V1C-20 plus 8K
'over 15 edit functions
'sorting
"data formatting
"expandable
"screen scrolling— 78 ctiaracler lines
■full documentation
"works with cassette and
standard VIC printer
"disk version available
'easy to adapt for RS-232 printers
Price $29.95
C.O.D,, ctieck, or money order
(Specify di5k or cassette!
NW Software
P.O. Box 126
Urbana, IL 61801
(217)356-7511
Dealer inquiries welcome
VIC IS a trademark o* Commodore.
\aC-20 SOFTWARE
Ovzr 100 programs on tape
and cartridge for the \1C
computer — both educa-
tional and fun!!
Write or call for your free
catalog.
Sunrise Electronics
7057 Lompoc Court
Citrus Heights, California
95610
(916) 969-8319
yiC BACKGAmmON VIC
Plays a great game by the rules and
won't let you cheat Our best seller.
SK version S12.95
Advanced 8K version S19.95
BLACKJACK TUTOR
Learn when to HIT, STAY, SPLIT PAIRS
and DOUBLE, You can bear Vegas for
just 512.95
GRAPHICS GENERATOR
Create, edit, reverse, save special ctiar-
acters unique DEMO feature included
S9.95
MAZE-MAN
Arcade game wicfi fast munching
action. Key or joystick, S9,95
All programs fit into 5K vic-20- Send
for free catalog
Send check or money order to:
(Add 50C for postage)
RAR-TECH
Box 761, Rochester, mi 48063 .
VIC iranemark of Commoaore /
186
COMPUTEI
July. 1982, Issue 26
Review:
SYSRES For
PET/CBM
Charles Brannon
Editorial Assistant
SYSRES claims to be the "ultimate program
manipulation system." Like its predecessors, the
Toolkit and BASIC Aid, SYSRES is a programmer's
aid package. SYSRES "wedges" into BASIC and
adds 33 commands (including six improved BASIC
commands) plus 1 1 extended DOS Support (the
original "Wedge") commands. All of the commands
are used for the development and maintenance of
BASIC programs.
The primary tools needed by a programmer
are; auto line numbering, renumbering, find, and
trace. SYSRES supplies "deluxe" versions of all
these. Automatic line numbering provides the line
numbers when typing in a program. If you start at
line 100, it will automatically print 1 10 when you
press RE TURN on line 100 (assuming a step size
often). SYSRES permits as unique variation: auto-
matic statement generation. If you are typing in a
long set of D.\T.A. statements, SYSRES can provide
the line numbers and the word "DATA." SYSRES
offers a "fill in the blank" line where you only need
to enter a single number. It can even press RE-
TURN for you, giving it the capability for automatic
line entry.
Advanced Renumber
Most Renumber commands change the line num-
bers of a BASIC program by an even increment
and update all line references made by GOTO,
THEN, GOSUB, etc. The entire program is re-
numbered. SYSRES permits partial renumber.
You can renumber just a subroutine, for example,
preserving all other line numbers, and updating
any line references if neces.sary.
Perhaps the most useful command in a package
like this is a Find command. Many programmers
find it indispensable. Using Find, you can locate
any variable, phrase, or keyword used anywhere in
your program. Another related command is
Change, which permits you to replace any variable,
phrase, or keyword with anything else.
For the Change command especially, it is vital
that you exactly specify the search string. You may
want to change A$ to B$, but you don't want ZA$
to become ZB$. To zero in on whatever you are
searching for, SYSRES permits yoti to use several
wild card and limitation symbols (such as V for
Variable, B for Beginning of line, or a quote to
signal quote mode), which together permit over
700 possibilities.
Debugging a program is much easier with a
Trace command. Trace (as implemented by
SYSRES) permits you to display program variables
as they change or are defined. So, you could display
the index of a FOR/NEXT loop, or watch how-
certain variables interact. (You can also type DUMP
in direct mode to display all variables.)
The advanced editor commands let you use
the BASIC editor as a general purpose ASCII line
editor. The commands GET and PUT let you save
this ASCII file to disk. SYSRES even partially
tokenizes this file to save disk space. These ASCII
files can be used to develop EXEC files, which are
a sequence of direct commands that are executed
as if they were a program. This gives the PET/CBM
the power found formerly onlv in CP/M's .EXC
files, Apple's EXEC files, or Atari's ENTER files.
An important feature of EXEC files is that they use
no program memory as they execute.
When using SYSRES, you get a feeling that
careful design went into the system. All keys repeat,
and the cursor keys "take off quickly. Full up/clown
scrolling of your BASIC program is supported,
and it works perfectly. If you displav the directory
with the improved ">S0" command, these line
numbers cannot be accidentally entered as program
lines or activate the scrolling feature.
Full printer support is aLso included with full
ASCII translation. Any command can be sent to
the printer if preceded with an asterisk. For exam-
ple, *LIST would list a program to the printer.
You can also dump the screen by holding down
both SHIFT keys and pressing RVS. Speaking of
keys, with SYSRES you can define any shifted key
to equal any sequence of keys or keywords. When
you define any key, all the alphabetic keys "come
alive" with convenient single'ke\' abbreviations.
Improvements To BASIC itself
The improved BASIC commands are another
example of the care taken to produce a complete
"operating system." The LOAD, SAVE, and
VERIFY commands default to the disk drive, and
the save with replace ("@") works on any disk
drive. (It first SCRATCHes, then resaves the pro-
gram.) Nevertheless, none of the commands are
programmable. Therefore, programs developed
with SYSRES are fully transportable .'^s the manual
says, "SYSRES is designed to be 'addictive to pro-
grammers not to programs.' "
SYSRES
Solidti.s International Corporation
Sidle 6-144 West J5lh Street
North Vancouver, B.C.
Canada, V7M IR5.
$75. C
July, 1982. Issue lb
COMPUTEI
187
Review:
Fun With
IVIicrocomputers
And BASIC
Fred D'Ignozio
Associate Editor
Do you like puzzles and games?
Arc you looking for a quick, painless way lo
learn how to program a personal computer?
Are you a kid, an adull, or something in
between?
If you answered v'v \.o all these questions, then
this bo<jk is for you.
I am a person who has a low pain threshold,
when it comes to plowing through "introductory"
guides to personal computers. "Ouch!" I cry when
I see guides set in a midget-sized typeface that
resembles footprints made bv a tapdancing Ilea.
The same goes when I see guides \\ith no
pictures, or guides that are loo technical, too seri-
ous, too sombei-, oi- too iri\ial. These books give
me indigestion - the same hunpy discomfoii I
experience when I swallow a plateful of spaghetti
and meatballs I forgot to chew.
Don .Spencer"s book is different, h's fini, it
really teaches, and it's an almost painless inttoduc-
tion to microcomputers and BASIC programming.
The book starts at a loftv level. In the fust ten
pages, Spencer skims over computers" social impact,
computer devices, trends, and careers.
f hen you get down lo business. You plan a
[jrogram, learn a iiiiic about llowcharting, gel a
few tips on how lo write )our first program.
Then you dive into BASIC. For twenlv pages,
you swim through constants and variables, arilh-
metic operations and DAT.\ statements. You finish
b\ loo[)ing through arrays.
Then come seventy pages of programs in-
eluding Manhattan Island, Sam's Monkev, The
Jolly Green Giant, and Roger Cioes to the Circus. If
you are math-oriented or a c(jmpulsive gambler,
you'll really like these programs.
I recommend this book to teachers oi intro-
ductory programming courses, and to parents,
kids, and anxious professionals just getting started
on their new computer. The problems start easy
and get harder. Almost all come with actual "solu-
tion" programs you can study. There are even
occasional exercises for you to tackle.
This is what the book offers.
What does it lack?
It is only an in/rod iirfioit lo microcomputer
BASIC', so don't expect lo be a progrannning whiz
when you are done — especially with regard to a
particulai' machine. Also, there is almost nothing
on soinid or graphics — two popular features of the
new, low-cost personal computers.
Still, it's a good start. Whether you're old or
yoimg. Whether you're cocky about computers or
afraid to touch one for fear it might bite off your
hand. Or explode.
Fun with Minocomputcrs and BASIC
by Donald I). .Sjjenccr
Resion Publishing Cio.
1 1480 Sun.set Hills Rd.
Reston. VA 22090
1 28 pages
$9.95 [japerback ©
A^ 0
SERVICE...
a nonexistant word in
computer language?
Now you can get FACTORY AUTHOR-
IZED service for your Commodore or
Atari computer and peripherals at reason-
able cost. Minimize your down time
frustration and expense. Extended war-
ranty available for most products, too!
CALL
71 7-327-1 450
Micro Computer
Service Center
477 E. Third St., Williamsport, PA 17701
188
COMPUTEI
July. W82. Issue 26
COMPUTEi's Listing Conventions
Many of the programs which are hsied in COMPUTE! use
special keys (cursor control keys, color keys, etc.) To make it
easy to tell e.xarlh what should be typed in when copvuig a
program into the computer, we have established the Ibllowing
listing conventions.
For The Atari
.All ilif editing and cursor control characters are spelled out
and surrounded by brackets in the program listings: ICXEARl
(or "clear screen." Other characters, such as CTRL-T (the
"ball" character) will be listed as the "normal" character, but it
will be within brackets: [T]. A series of identical control
characters will be indicated bv a numlier within the brackets:
{;U)C)VVN) means type KSC (X RSOR-DOWN three limes:
{ lij Rl would mean lype t'TRL-R twelve times. Reniemlx-r to
press the ESC (escape) key before each cursor control key. If
you should see [ ESC) itself in a program listing, vou would
pres.s ESC twice.
Two of the control characters, { = } and { -} , should be
shifted. Any reverse field lexi will be enclosed within vertical
lines. (In other words, anv lime you see a vertical line within a
program listing in COMPUTE!, press the .A.tari logo key (A) .)
Atari Conventions
tCLEAR}= 3HIR-< (Clear Screen)
aP}= CTRL-fflirvus (Orsor Up)
0)01*0= CTl?L-eHuals (Cu-^sor Dowri)
<1£FT}= CTRL-plt^ <Ct,rsor left)
{RIGKD= CTRL-asterisk (CXrsor- right)
{BACK S)= BACK S (Back space)
{DELETD= CTRL-DELETE (Delete cl^racter)
<DEL LI«>= SHIFT-OaTTE (Delete Line)
CIMS£RT)= CTRL-INSERT (Insert character)
ONS LIhE>= SHin-IHSS:T (Insert line)
{ESC>= ESC (ESCape key pt^essed twice)
aAB:>= TAB <Tab kes)
CCLR TflB)= CTRL-TAB (Clear tab sett ine)
{SET TAB>= SHIFT-TAB (Set tab stop)
(SELU- CTRL-2 (Rins buzzer)
For PET/CBM/VIC
(Generally, any PET/CBM/VIC program listings will contain
bracketed words which sjjcll out any special characters:
( DOWN) would mean to press the cursor-down key;
(!iDO\VNj would mean to press the cursor-down key three
times.
To indicate that a key shotild he .shifted (hold down the
SHIFT kev white pressing ihe other key), the key would be
underlined in our listing, for example, S would mean lo type
the S key while holding the shift key. This would resuli in ilie
"heart" graphics symbol appearing on vour screen.
Sometimes in a program listing, especially within quoted
text when a line runs over into the next line, it is difilcult t<i
tell where the first line ends. How many times should you type
the SP.ACE bar? In our convention, \vhen a line breaks in this
way, the - symbol shows exactly where it broke. For example:
100 PRINT "TO START THE GAME "
YOU MAY HIT ANY OF THE KEYS
ON YOUR KEYBOARD."
shows that the program's author intended for you to type two
spaces after the word (iAME.
For The Apple
Programs listed as "Microsoft" are written for the PET/CBM,
Apple. (XSI, etc. .Although the programs are general in naiure,
you may need to make a few changes for iheni to run coriecilv
on your .Ajjple. Microsoft B.A^SIC programs written for the
PE I7CBM sometimes contain special cursor control characters.
The following table shows equivalent .-\pple words. Notice
that these Ap[)le commands are out.'^idf cjuotations (and even
separate from a PRINT statement). PRINT"[RVS]YOU
WON" becomes INVERSE: I'RINT'YOU WON":NORMAL
[CLEAR( (Clear Screen) HOME
[DOWN] (Cursor down)
Apple II -f: Call -922
POKE37,PEEK(37)-l-(PEEK(37)<23)
[UP] (C;ur.sor up)
POKE 37.PEEK(37)-(PEEK(37)>()))
[LEFT] (Cursor left) PRINT CHR$(8);
[RIGHT] (Cursor right)
PRINT CHR$(21)
[RVS] (Inverse video on. lurns off automatically after a
carriage return. To be safe, turn off inverse video after
the prim statement with NORMAL unless the PRINT
slatemeru ends with a semicolon.)
INVERSE
[OFF] (Inverse video ofO NORMAL
Shifted characters can represent either graphics characters
or uppercase letters. If within text, just use the non-shifted
character, otherwise substitiuc a space. Some "gctierali/ed"
programs coniain a POKE such as POKE 59468,14. Omit
these from the program when typing it in. One final ncite: vou
will probably want lo insert a questit>n mark or colon within an
INPL'f prompt. PET/CBM and many other BASICs automat-
ically print a question mark:
INPUT "WHAT IS YOUR NAME";N$
becomes
INPUT "WHAT IS YOUR NAME?";N$
All Commodore Machines
Clear Screen (CLEAR}
Home Cursor ( HOME]
Cursor Up iup}
Cursor Down { DOWN )
Cursor Right {RIGHT}
VIC Conventions
Cursor Left (LEFT)
insert Character [INST}
Delete Character (DEL}
Reverse Field On {RVS)
Reverse Field Off { OFF }
Set Color To Black
(BLK)
Set Color To White
{WHTi
Set Color To Red
{RED}
Set Color To Cyan
(CYN}
Set Color To Purple
(PUR}
Set Color To Green
{GRN}
Set Color To Blue
{BLU}
Set Color To Yellow
{YEL}
Function One
{PD
8032/Fat 40 Conventions
Set Window Top
{SET TOP}
Set Window Bottom {SET B OT }
Scroll Up
(SCR UP}
Scroll Down
{SCR DOWN)
Insert Line
{INST LINE}
Delete Line
{DEL LINE)
Function Two
lF2i
Function Three
[F3}
Function Four
{F4}
Function Five
{F5}
Function Six
{F6}
Function Seven
{F7)
Function Eight
(F8)
Any Non-implemented
Function
(NIM)
Erase To Beginning {ERASE BEG)
Erase To End {ERASE END)
Toggle Tab {TGL TAB)
Tab { TAB }
Escape Key {ESC} ^
July, 1982. Issue 26
COMPUTE!
189
COMPUTE! Back Issues
Here are some of the applications, tutorials,
and games from available back issues of
COMPt/TlL Each issue contains much,
much more than there's space here to list,
but here are some highlights:
January, 198 1 : Load PET Programs Into
The Apple II, Player-Missile Graphics for
Atari, The Atari DOS, The Kernel of the
OSI Operating System, Fixing LOADing
Problems on the PET, Spooling with the
PET Disk, Expanding KIM.
February, 1981: Simulating PRINT USING,
Using the Atari as a Terminal for Telecom-
munications, Attach a Printer to the Atari,
Double Density Graphing on CIP, Commo-
dore Disk Systems, PET Crash Prevention,
A 25(i Apple II Clock.
March, 1981: Machine Language Pro-
gramming for Beginners, Getting the Most
from your PET Cassette Deck, Apple and
PASCAL, Flipping your Apple Disk,
Designing your own Atari Character Sets,
Renumber for Atari, An Arari Disassembler,
Six-gun Shootout Game for OSI CIP, PET
Machine Language Graphics.
April, 1981: How to be a VIC Expert,
Resolving the Applesoft and Hires Graphics
Memory Conflicts, Atari SuperCube, String
Arrays in Atari, Memory Partition in PET,
Pet Relative Files, Working with BASIC
4.0, Commodore File I/O, ROM Expansion
for Commodore PET.
May, 1981 : Named GOSUB/GOTO in
Applesoft, Generating Lower Case Text on
Apple II, Copy Atari Screens to the Printer,
Disk Directory Printer for Atari, Realtime
Clock on Atari, PET BASIC Delete Utility,
PET Calculated Bar Graphs, Running 40
Column Programs on a CBM 8032.
June, 1981: Computer Using Educators
(CUE) on Software Pricing, Apple II Hires
Character Generator, Ever- expanding
Apple Power, Color Burst for Atari, Mixing
Atari Graphics Modes 0 and 8, Relocating
PET BASIC Programs, An Assembler In
BASIC for PET, QuadraPET: Multitasking?
July, 1981: Home Heating and Cooling,
Animating Integer BASIC Lores Graphics,
The Apple Hires Shape Writer, Adding a
Voice Track to Atari Programs, Machine
Language Atari Joystick Driver, Four Screen
Utilities for the PET, Saving Machine
Language Programs on PET Tape Headers,
Commodore ROM Systems, The Voracious
Butterfly on OSI.
August, 1981: Minimize Code and Maximize
Speed, Apple Disk Motor Conrrol, A
Cassette Tape Monitor for the Apple, Easy
Reading of the Atari Joystick, Blockade
Game for the Atari, Atari Sound Utility,
The CBM "Fat 40," Keyword for PET, CBM/
PET Loading, Chaining, and Overlaying.
September, 1981: The Column Calculator,
What is a Modem and Why Do I Need
One?, PET, Apple, Atari: On Speaking
Terms, A Tape "EXEC" for Applesoft, A
Self-altering Program for Apple II, Posi-
tioning P/M Graphics and Regular Graphics
in Memory, An Atari BASIC Sort, Shoot,
an Arcade Game for Atari, Exploring OSFs
Video Routine, PET Tape Append and
Renumber, All About LOADing PET
Cassettes.
October, 1981; Automatic DATA State-
ments for CBM and Atari, VIC News,
Undeletable Lines on Apple, PET, VIC,
Budgeting on the Apple, Switching Cleanly
from Text to Graphics on Apple, Atari
Cassette Boot-tapes, Atari Variable Name
Utility, Atari Program Library, Train your
PET to Run VIC Programs, Interface a BSR
Remote Control System to PET, A General
Purpose BCD to Binary Routine, Converting
to Fat-40 PET.
November, 1981: SuperPet: A Preview,
Japanese Micros; A First Look, Introduction
to Binary Numbers, An Apple Primer, Page
Flipper for Apple, An Atari Database
System, A Program for Writing Programs on
the Atari, Atari Textplot, OSI Relocation,
The PET Speaks, Inversion Partitioning, A
Personal News Service on PET, Bits, Bytes,
and Basic Boole.
December, 1981: Saving Fuel $$ (Multiple
Computers: versions for Apple, PET, and
Atari), Unscramble Game (multiple
computers), Maze Generator (multiple
computers), Animating Applesoft Graphics,
A Simple Printer Interface for the Apple II,
A Simple Atari Wordprocessor, Adding
High Speed Vertical Positioning to Atari P/
M Graphics, OSI Supercursor, A Look At
SuperPET, Supermon for PET/CBM, PET
Mine Maze Game.
January, 1982: Invest (multiple computers).
Developing a Business Algorithm (multiple
computers), Apple Addresses, Lowercase
with Unmodified Apple, Cryptogram Game
for Atari, Superfont: Design Special
Character Sets on Atari, PET Repairs for
the Amateur, Micromon for PET, Self-
modifying Programs in PET BASIC, Tiny-
mon; a VIC Monitor, Vic Color Tips, VIC
Memory Map, ZAP: A VIC Game.
February, 1982; Insurance Inventory
(multiple computers), Musical Transposition
(multiple computers). Multitasking
Emulator (multiple computers), Disassemble
Apple Programs from BASIC, Plotting
Polar Graphs on Apple, Atari P/M Graphics
Made Easy, Atari PILOT, Put A Rainbow
in your Atari, Marquee for PET, PET Disk
Disassembler, VIC Paddles and Keyboard,
VIC Timekeeping.
March, 1982: Word Hunt Game (multiple
computers). Infinite Precision Multiply
(multiple computers). Atari Concentration
Game, VIC Starfight Game, CBM BASIC
4.0 To Upgrade Conversion Kit, Apple
Addresses, VIC Maps, EPROM Reliability,
Atari Ghost Programming, Atari Machine
Language Sort, Random Music Composition
on PET, Comment Your Apple II Catalog.
April, 1982: Track Down Those Memory
Bugs (multiple computers). Shooting Stars
Game (multiple computers), Inrelligent
Input Subroutines (multiple computers),
Ultracube for Atari, Customizing Apple's
Copy Program, Using PET/CBM In The
High School Physics Lab, Grading Exams
on a Microcomputer (multiple computers).
Atari Mailing List, Renumber VIC Programs
The Easy Way, Browsing the VIC Chip,
Disk Checkout for PET/CBM.
Back issues are $3.00 each or six for $15.CX).
Price includes freight in the US. Outside the
US add $1 .(X) per magazine ordered for
surface postage. $3.00 per magazine for
air mail postage. All back issues subject to
availability.
In the Continental US call
TOLL FREE 800-334-0868
(In NC Call 919-275-9809)
Or write to COMPUTE! Back Issues, P.O.
Box 5406, Greensboro, NC 27403 USA.
Prepayment required in US funds,
MasterCard, Visa and American Express
accepted. North Carolina Residents add 4%
sales tax.
64K RAM for AIM-65®and SYM-ffrom
BYTE MICROSYSTEMS
AT LAST, ENOUGH MEMORY TO GET THE JOB
DONE RIGHT! AND AT THE RIGHT PRICE! !
• EA S Y. PL UG-IX ISSTALLA TION
• NO SOLDERING REQUIRED
• A FPEA RSAS2 MEM OR Y BA NKS.
EA CH 32 K B YTES LONG
• OCCUPIES ADDRESS RANGE 0000-7FFF
m DESIGNED FOR COMPA TIBILITY WITH
ALL AIM AND SYM PROGRAMMING
LANGUAGES. AND WITH BYTE-DOS
AIM-65 DISK SYSTEM*
• ALL ADDRESS AND DATA LINES
FULLY BUFFERED
• USER UPGRADABLE TO ADD
PIGGYBACK COLOR VIDEO GRAPHICS
BOARD (SOON TO BE RELEASED)
SPECIAL INTRODUCTORY PRICE
$
399
00
(Effective 9/1/82 will be $475.00)
Includes, assembled, rested board,
connectors and complete instructions.
Dealer inquiries invited.
BYTE
MICROSYSTEMS
cos
P O B A T 1 O N
1477!lKA»vtNU[.SANJOSf.C»»!1W «JB/4iJ,l»SS
BYTE-DOS $499 SYSTEM INCLUDES DISC CON-
TROLLER CARD, TEAC FD-50A DISC DRIVE
SEND ME THE FULL STORY!
: Name :
I rnmpany ^
'■ AdrirPts
:citv
: Tr.l»phnfio
Slate
Zip
D home '.
AIM-65 is 1 tr«d«m»rk of fiockwoll Internatlonil
STM-1 is a tr«d»inark of Synartsk Systems Corp.
CAPUTE!:
Modifications Or
Corrections To
Previous Articles
Further Notes on "Fast Sort For PET/CBM"
The following information honi Jim Russo uill iiid
in aciaptint^r ilic I'F. IVCliM niarliiiu- lant>iiasi;c sort
utility to work uilhin a BASK! [jrngrain. "Fast
Sort" appeared in COMPUTE!, Mav, 1982. #24,
pg. 160:
This roiitiiK' operates on sliing.s ofetiiial length
which occupy coniiguous memory locations. 1 1
does not know about variable names or arrays. Tlie
example given in tlic article uses Program 2 to
collect some data, ancl then Program 3 to read it. in
order, into a tresh string data space, without any
extra suing \ariables. Boih (unci ions toulcl be
done in Uie same program if the data was written
into an array as it was collected, and then the fol-
lowing line was used to nicne tlie data into
a contiguous area at the beginning oCslring
memory:
FORI = 0TOTN-1: A$ (I ) =AS (I) -.NEXT
In a larger program witli more than one array.
this same technique could be used to move each
array to the appropriate place when it was time lor
it to be sorlecl.
Line 150 m Program 3 will tail For certain
values of length and number of lecords. .A better
way to write it is:
150 AA=256*HA+LA+LN+2:POKE179,AA AND 255:PO
KE180,AA/256
The two extra bytes used in each string b\
B.A.SIC 4.0 are a pointer back to tlie variable data
area, where the siring length and starting address
aie stored. Ai'ler a sort, ilicse pointers are not
valid. No harm will be done as (aiiir as none of /hr
sorted strings is redefined by the pnigrani. If some of
the sorted strings are redefined bv the program,
then a siib.sec|ueu[ garbage colleciion will cause
chaos. Fo illustrate this, try adding the following
line to Program 3:
175 A$(1}="NEW STRING #1":X=FRE(0)
If there is enough rooin for two copies of the
array data in string memory, then tlie following
two lines will llx the [)roblem:
125 IF FRE(0) < 270+TN* (LN+2)THENPRINT"N0 R
COM": STOP
175 FORI= 0 TO TN-1: A$(I)=A$(I): NEXT
Line 12:") forces a garbage collection, and
makes sine there will be enough room for line I 7."i
to execute without causing another garbage collec-
tion. Line 1 75 Fixes the pointers bv rewriting all of
the sorted string.s. C
July, 1982, Issue 26
COMPUTE]
191
Hayden Announces
Tetrad: A New Way
To Play Tic-Tac-Toe
Tetrad is a game of strategy and
mental daring that enables a
pla\ cr to match wits against a
computer. Based on tlie popular
game of Tic-Tac-Toe, 1 etrad
allows the tension to build be-
tween (jpponenl.s as each tries to
get four X's or O's in a row in any
direction on anv or all four play-
ing boards.
Tetrad has a board that
offers 16 S(;|uares on fourfliffcr-
ent levels. The additional sc|uares
and boards allow 76 po.ssible
winning combinations — nine
time.s more ihan con\eniional,
iwo-diniensional Tic- lac-Toe.
I'laycrs can choose from
three levels: novice, intermediate
or professional. (Colorful graphics
accompanied by unique soinid
effects make I'etrad a new way to
play an old favorite.
Tetrad is written bv Philip
Hess and can be used on an
Apple If disk witli :\2\\. 09809,
$19.9.0.
ihmU'ii Hook Co., Inc.
>0' Essex St.
Roclu'lle Park. .\'J 07662
Tnilf,;r(SOO)631-aS56
orNJ:(201)8-43-(l53<l
Corvus Announces
Mass Storage And
Network Systems
For Atari 800
Corvu.s Systems, Inc. announced
the availability of Winchester
disk systems and tlie Corvus
Multi[)lexer l<jcal area network
for the Atari 800 microcomputer.
This announcement means that
Atari 800 owners can join micro-
computer users who enjoy the
speed, reliability, ancf storage
capacity of Corvus 6, 1 1 , and 20
mcgabvtc disk systems. It also
means tliat, with the Corvus
Multiplexer local network. Atari
users can share mass storage as
well as printers and other expen-
sive peripherals. Ckirvus will also
oifei' its Mirror backup s\stem
which uses video tape tet hnology
ior Winchester disk backup.
Prices of Corvus disk systems for
the Ataii 800 start at $3. 195
complete with interface and all
lecjuiied software.
Connts Systems, Inc.
2029 O'Tfiole Avemie
San } OS,'. CA 95131
(■IOk}946-770()
Software Publisher
Releases P/SAT
Preparatory
Kdu-Ware has announced two
software tutorials for college-
bound students on mastering
voca!)iilary and deciphering new
worfls. PSAT Word Atiack'skills
and SAT Word Attack Skills
prepare students speciflcalK for
the "antonyms" portion of the
Scholastic Acliievemeiu Test.
PSAT and SAP Word Attack
Skills each contain two diskettes:
Prefixes and Roots. Vocabulary
words, selected tor their fret]uent
a]>pearance on the PSAT/SAT,
are gioujjed into lessons (six per
diskette). In each lesson, students
first pinpfjint a word's meaning
by selecting its synon\ in. The
wore! is then reviewed through
definition, sample sentences,
analysis oi its components (root
and/or prefixes), and a test (|ues-
tion. A timed test then prepares
siudents to function under
pressure.
PSAT Word Attack Skills
and SA r Word .-\ttack Skills are
independent tutorials, yet can be
purchased and used together as a
comprehensive .sequence. Holh
systems are a\'ailable for the
Apple II and li Plus computers.
VIC* OWNERS
TELEGAMES
BRINGS YOU fVlORE SOFTWARE:
BREAKAWAY - A breakout game
using paddles - $8.95
TARGET ZAP - Move man around
screen to hit randomly appeorlng
objects $8.95
HANGMAN - A fun and educational
game for oil - $7.95
SUPER TREK Track down Klingons:
then destroy them (3K exps. req)
$999
LEARNING SERIES #1 - First of a
series of tapes and reference
material put together to help the
new computerist learn computing
the fun and easy way^i #1 $14.95
CANADIAN OR US FUNDS!!
Send check or M.O. to:
TELEGAMES
P.O. Box 152
Hampton, Ontario, Canada LOB UO
Write For
Free Catalog
'Trodemark of
Commodore
^92
COMPUTE!
July. 1982, Issue 26
48K, DOS 3.3. Each two^disk
package retails for $49.00.
Kihi-Waii- St'micfs. Inc.
P.O. Box 22222
Agoum, CA 913U1
Discover FORTH
Announced By
Osborne/
McGraw-Hill
Osbonie/McGraw-Hill has re-
leased a new book by Tliom
Hogan entitled D/,vrf«7'r FORTH:
Leainiiig and Progmmmnig the
FORTH Language.
This intrcxhiclion lo
FOR IH. tlie ( ompiiier language
of building blocks, is written in a
fricndlv. informal stvle. Begin-
ners will Inid iniorniation on this
multi-faceted language and
insli "uclions to guide iheir |)ro-
gramniing skills up to an inier-
meciiate le\'el. More experienced
programmers can use H(}gan"s
book as a reference tool.
In the text, Hogan describes
FOR TH syntax, spccificallv
applicable U) both F0RTH'-79
and FIG-FORFH. Notes are
included on logical exlensioiis
and alternali\ es to the current
standard FORTH syntax.
Discover FORTH provides a
history of the language and a
synthesis of material frotn pro-
granuning manuals, indej)endent
|irogranimers, and publications
of the F'ORTH Interest CJroup.
Discover FORTH: Learning and
Programminir l/ic FORTH
L/ini^inigf
h\ Tham Hiignn
$15.(H) Paperback
250 pages
O.sborn elMcG ran '- Hill
630 Hamriifl Way
Berkeley . CA 94710
To place an order call:
(415)548-280,5.
Apple Announces
Price Drop For
Monitor III And
Apple II Stand
Apple Computer, Inc. ainioimces
a price reduction for its Monitor
III video display, and introduces
ATARI
ATARI
800 16K $665
800 48K $799
400 16K $320
New Software for Atari
TempJeol ApshaJ S 30
Apple Panic , - S 23
Raster Blaster $ 23
Bug Attack S 23
Bishops Square S 23
Graptiics Master J 30
Dung Beetle S 23
Actron Quest I 23
Crossfire. S 23
Threshold S30
Frogger S 26
Computer Stocks & Bonds S 17
Guns ot Fort Dellance S 1'
Mousekattack % 26
K-Razy Shootout J 36
Jawbreaker .3 23
Black Forest J 20
Ghostly Manor J 20
Tremendous Discounts on All ATARI
software from Adventure Internstional.
Arcane Plus. ARTSCI. Automated Simu-
lations, Anion Hill, BroderOund, Budgeco.
Cavalier. Computer Magic. Crystal Com-
puter. Dalasoll. Edu-Ware. Gebelli. Inno-
vative. J-V. K-Byte. UK. On- Line. Quality
Sollwsre, Spectrum Strategic Simulation.
Sublogic. United Soltware, Versa Com-
ouiing. Visicarp.
The Computer Outlet is an
associate of Ttje Computer
Learning Center For Chil-
dren. We are experts m
educational technology and can custom-
ize educational son^are curricufums for
school distncls. individual schools, or for
the child at home Please contact us
about your software and equipment re-
quirements and feet free to stop by our
school in Las Vegas.
We have one ot the world's largest
educational soltware inventories featur-
ing our own Computer Learning Center
software.
Ten Little Ro&ois (ATARI) SI 2.95
Preschool Math (ATARI) St9.95
Funbunch (TRSaOl $15,95
Jacks Jill (TBS-aO) S12-95
SPECIALS OF THE MONTH
BMC 13" Color Monitor $309
TI99/4A Computer.... S325
Axlon Ramcram $142
Hayes Smartmodem ..$229
Elephant Disks ..(boK)$ 22
SAVE UP TO 35% on Personal
and Business Computers, Perh
pherals and sottware from these
leading manufacturers:
Computers — Altos, Commodore.
Dynabyte. Televldeo, Texas Instruments,
Xerox,
Modems — Hayes, Lexicon. Livermore,
Noxation.
Monitors — Amdek, BMC, NEC. Sanyo,
Printers — Anadex, Diablo, Epson,
MEG. Okidaia, CITOH, QUME, Texas In-
struments,
Wiscellaneous — Axlon, Sorge Sentry,
The absolute lowest prices on all Appfe
Software from Adventure Inteinational.
Astat, Artsci. Automated Simulations.
Avalon Hill, Avant-Garde. Beagle Bros..
Be?, Broderbund. Budgeco. California
Pacific, Cavalier Computer. Continental
soltware, Dakin. Datamost. Datasoft.
Delta Software. Denver Software. EDJ-
Ware. Gebelli, Hayden, Higtilands Com
puter, Howard Software, Infocom. Innova-
tive Design. ISM. lUS, LJK, Micro Lab,
f/icro Pro. Microsoft. Muse, On- Line, Pic-
cadilly, Phoenix, Soltware, Quality Solt-
ware. fliverbanl<. Sensible, Sentient.
Sierra. Sirius, Sir-Tech, Soltape, Stone-
ware. Strategic Simulations, Sublogic,
Synergistic. Turniey. United Soltware.
Versa Computing. Videx, Visicorp etc.
YOUR ONE STOP MARKETPLACE
FOR ALL YOUR COMPUTER NEEDS.
If not listed, please ask.
Computer Outlet
Park Place — Upper Level
1095 E. Twain - (702) 796-0296
Las Vegas, Nevada 89109
Call Toll Free 800-634-6766
We accept Major Cretdit Cards
•vE2MPyTER_
1
^K commadare
VIC20 $249
VIC Software
Avenger i 23
Superslol $ 23
Super Alien $ 23
Jupiter Lander ,,....,..... S 23
Draw Poker S 23
Midnight Drive S 23
Start leel Orion S 19
Morloc's Tower S 16
Dragon's Eye i 19
Spiders ol Mars $ 42
Robot Blasters S 30
Meteor Run $ 42
Blastoids , , S 15
Amok $ 15
Alien Blitz S 19
Skymatn S 12
Space Division S 12
Long Division , S 12
Gobbler S 19
Tne Alien » 19
Invader Fall * 17
Stars Wars t 1*
Laser War t 15
Dragon Maze S 14
Space Intruders S IE
Computer Slocks & Bonds $ 13
Guns ol Fort Detiance S 16
AMI Apple Disk Drives
40 Track $345
80 Track $399
For Fast Delivery, send certified or
casfiier checlis, money orders, or direct
bank wire Iranslers. Personal checlis
allow 2 to 3 weeks to clear. 25% deposit
on all C.O.D.'s. Prices are mail order only
and are subiect to change. Shipping-Soft-
ware (ti.OO Minimum). hardware-calL
Nevada Residents all sales tax. Foreign
inquiries invited — add 15% lor shipping.
a stand which permits easy use of
the Monitor III with the Apple II
personal computer.
The suggested retail price of
the Monitor III is now $249.00, a
229f reduction, and applies to
both white and green phosphor
versions. The new pricing
reduces the total system cosi
for both the Apple II and the
Apple III.
The Apple II Stand is de-
signed to the exact width of the
Monitor III to allow aesthetic
integration into the Apple II
system. The stand permits easy
accessibility to the back of the
Apple li. The suggested retail
price is $29.9.5.
Aj/pli' Computer
2U525 Mar'mni Ave.
Cupertino, CA 95014
Pall PRICE. f°rt,'9
and movies.
commodore VlC-20
lin Mass.,
,961-24001
S319
SV5
$439
. . . S82
cartridge tor Viu..
S^a.eofier on .re-
stock iiems.
Just pick up t^f
number, and ^f~^°'
Xsto-aVOuour
pB.l.C.E.list^
pB.l.C.E. is^tiat
you want-
avox 76O0 Odyssey v ^^ 39.9S
prices suD/eci lu ^ ^ ^ "^
Micro
HhDl
lE
BEST PRICES
VIC-20 $248
5 VIC Programs $1 9.95
States & Capitols, Jackpot,
Countries& Capitols, Blackjack,
and Hangman.
COMMODORE EQUIPMENT
VIC Printer
» 320
VIC Disk
$ 487
PET 401 6
S 789
PET 4032
$ 9S2
CBM 8032
SI 087
Super PET
$1836
Datasette
$ 63
Single Disk
$ 541
4040 Disk
$ 983.
8050 Disk
$1333
4022 Prinlsf
$613
8023P Printer
$ 768
8300P Daisy Printer
$1732
Xerox 820
$2447
Atari 400
$ 347
Atari 800
S 897
Atari Disk
S 447
Box of 10 Elephant Diskettes
No. 1 S.S. S.D. Soft Sector
$ 21
Anadax 9501 Printer
200CPS Matrix-Graphics
$1197
Smith Corona Daisy Printer
LetterQuality, Parallel or Serial
$ 787
Comet 1, 124 GPS Matrix Printer
Bidir. Parallel or Serl-LmtdQty
$ 302
Epson MX70
$ 344
Epson MX80
$ 444
Epson MX80FT
S 547
Other Brands Carried: NEC, ALTOS, NORTH
STAR, DIABLO, QUME OKIDATA, TELE-
VIDEO. AMDEK, MAXELL. SCOTCH, DY-
SAN, CITOH, ZENITH and More.
A>K For Catalog: Specify Commodore, Alan. Apple.
Nonh Star, or Peripherals.
Ics
Micro Wholesale
276 N. University, P.O. Box 1243
Provo, Utah 84603 (801)373-2901
Prices arefororepaymernB/C8rtifieclchBcKadd3%(or
Sank Cards- Personal cnecks accepted, bui will delay
stiipmenl. Whan possibla. all ilems shipped UPS, treighl
collecl. All sales subject lo availability and stock.
194
COMPUTE)
July. 1982, Issue 26
Sybex Releoses
Book For
Business Managers
Executive Phinning with BASIC by
X. r. Bui has just been released
by Sybex. With this boot;, the
business manager will learn to
use a personal coniptiter to ac-
celerate decision-making and
planning methods.
Up-to-date BASIC decision
iTiodel computer piograms for
business management are pre-
sented including; Cost/Volume/
Profit, Linear Progranmiing,
Inventory Management, Critical
Path Analysis ancl PER T, Expo-
nential Smoothing, Linear and
Multi-Linear Regression, Finan-
cial Ratio Analysis, Discounted
(lash Elow, Portfolio Manage-
meiu and more.
Ihe development, rationale
and proper use of each decision
model is carelully outlined. True-
to-lil'e application examples are
provided and problems are fol-
lowed up and solved in sample
runs of the programs. Three
appendices complete the text: a
summary olBASICI instructions;
a collection ol subroutines lor
matrix Algebra: and a siminiary
of the most important business
.statistics tools along with BASK"
programs ih;n perform these
algorithms.
Executive Planning With BASIC
bv X. T. Bui
$12.9.5
Ref. B38() ISBN: 0-89588-083-0
.Syljex
2344 Sixth Street
Berkelev.CA 94710
(415)848-8233
P.O. Box 7498
Menlo Park, CA 94025
(4 15)966-1 54 5
BIZCOMP ^
Intelligent Modem
From BIZCOMP
BI7,COMP Corporation announces
the immediate availability of
Model 1012, a microprocessor-
based !2()()«0() baud Intelligent
Modem. The 10 1 2 features full
Bel! 2I2.\ compatibilitv and
BIZCOMP's keyboard dialing.
An integral serial auto-dialer
allows kevboard dialing while the
low-power, LSI circuit design
gives reliable, coo! running oper-
ation. A Thompson pre-fllter
assures excellent data iiitegrily.
'Ehe built-in microprocessor
provides a full complement of
powerful commancls for control-
ling dialing, auto-answer, self
testing and programming modem
|)ar;mielers.
Front panel controls have
been ergonometrically designed
lor efficient and simple use by
nontechnical office personnel.
The 1012 is fully FCC registered
for direct connection and is
packaged in a stylish, low-profile
injection enclosure which may
be itsed as a base for a desk
telephone.
Applications include remote
datastations, siore-and-forward
electronic mail, computer-
computer file transfers and
automatic polling of unattended
locations.
inquirU's Manager
BIZCOMP Corporation
EPYX Releases
Exciting New Quest
Game For The Atari
EPYX has relea.sed King /Vrtluir's
Heir, a new fantasv quest game
for the Atari 400/800 home
computer.
In this legendary realm, the
player .serves at the King's right
band. Arthur, King of the Bri-
tons, has named him heir to the
throne.
But the player must pro\e
himself worthy to hold the crown
of Camclot. Arthur commands
that he shall go in quest of the
treasured Scix)ll of Truth, hidden
by the great wizard. Merlin.
By moving hisjovstick, the
player's computer displays, in
full color graphics, the magical
world of Camelot and its mystical
surroundings.
Being faithful to tlie C'rown.
the plaver accepts the royal com-
iTiand to retrie\e the scroll. Merlin
forewarns liim of mvstcrious
places, grue.some creatures, evil
forces and magical objects that
enter his quest at every turn.
Defying all perils, the player
journeys through an ominous
forest, a supcrnaiinal castle,
treacherous caves and magical
cities — a few of the seven types of
realms that entice him. Some
hold necessary supplies and even
treasures, but in others he is
surrounded by evil.
The plaver must do all in his
power to ward off dragons, bar-
gain with wizards, and subdue
the devil himself, as more than
these will try to waylay him in his
quest.
But, amazing treasures will
spur him on. A staff th;a ema-
nates the most powerful of magic
and a ring with supernatural
powers arc among the wonders
the player may find.
THE MONKEY WRENCH FOR ATARI
$49.95
A BASIC and madiine language
programmers aid for BOO users.
Plugs into right slot and works
witSi ATARI BASIC. Adds 3 new
direct moite commands in-
cluding auto line numbering,
delete lines, change margins,
memory test renumber BASIC,
hex/dec conversion, cursor ex-
change, and machine language
monitor.
The monitor contains 1 5 commands used to interact with
the 6502. Some are display memory/registefs, disassem-
ble, hunt compare, hex/dec conuert, transfer memofy, and
printer seticlear. Uses screen editing.
CASSriTE BASED MACRO
#
5^
ASSEMBLER/EDITOR
'The Compatible Assembler/Editor"
• Macros, Conditional Assembly, String search and/or
replace, standard mnemonics, (Ex: LDA (LABLE), Yl
► Long labels, IWOVE, COPY, AUTO, DELETE, PUT, GET, etc.
EPROMS - HIGH QUALITY, NOT JUNK
EPROM PROGRAMMER
FOR PET AND ATARI COMPUTERS
The BRANDING IROf^ is an EPRDM programmer espedally
designed for PET and ATARI computers. Programs 2716
and 2532 type EPROMs. The PET version plugs into the
cassette and I/O port and comes witti software whidi adds
the programmer commands to the PET monitor. The
ATARI version plugs into controller jacks and comes with
a full fledged machine language monitor which provides
30 commands for interacting witti ttie computer and the
BRANDING IRON.
PET - m.[
ATARI - S119.95
5/4 INCH SOFT
SECTORED DISKEHES
Highest quality. We use them on
our PETs, APPLES, ATARIs, and other
computers. 522.50/10 or SM.50f2(t
PET TERMINAL SOFTWARE
A buy you RS-232 users can't pass-up. Includes
RS-232 tiarcJware with a sophisticated software
package. May be controlled via keyboard or from
BASIC. A super buy. S129.95
STARWRITER F 10 DAISY WHEEL PRINTER
PARALLEL - $1405, RS-232 - $1600, TRACTORS - $210
SIGNALMAN MARK I DIRECT CONNECT
MODEM - $89.50
Standard 300-baud, full duplex,
answer/originate, Powered by
long lasting 9-volt battery (not
indudedl. Cable and RS-232
connector included.
MAE SOFTWARE DEVELOPMENT SYSTEM
FOR PET, APPLE, ATARI fj.
'The Compatible Assembler"
• Professional system for development of Machine Lan-
guage Programs. 31 Characters per label.
•Macro Assembierrfext Editor (or Disk-based systems.
• Includes Word Processor for preparation of Manuals, etc.
• Standard Mnemonics - Ex.: LDA (LABEL), V
• Conditional Assembly, Interactive Assembly.
• Editor has string search/search and replace, auto line
numbering, move, copy, delete, uc/lc capability.
• Relocating Loader to relocate object modules.
• Designed with Human Factors Considerations.
BEFORE YOU BUY THAT OFF-BRAND ASSEMBLER,
WRITE FOR OUR FREE DETAILED SPEC SHEET.
PL*SHI1 EMS Htntgtnent Hi iltiidei
to a1lw $50.00 cr«m to ASM,'T[0
owner's i#io want to upgrade to MAE.
To gel this credit, return ASH/TEO
■anual with order for W>1.
Olympic
Sales
^^ SERVING YOU SINCE 1947
Company
CABLEi-OLYRAV LSA
Main Sfiowroom & Offices;
21 6 So. Oxford Avenue
(P. O. Box 74545)
Los Angeles, CA 90004
Telex: 67 34 77
WE HONOR VISA
and MASTERCHARGE
VfSA
lag]
ORDER DESKS
open 6 days a week!
7:00 am to 7:00 pin Mon- Sat
Order Desks: (213)739-1130
TOLL-FREE TOLL-FREE
(outside [:alif.) (within Calif.)
800-421-8045 800 252-2153
Pricn ihowm art for mail or phone ordin;
Witt.in difhlly hiflier.
Goods subject to availability:
OSC wilt meet or beat almost
any advertised price as lorig as
the competition has the goods
on hand; not responsible for
typographical errors; prices &
specifications subject to change
without notice; this ad supercedes
all previous ads; min shpg 8, hndig
$5.95; Send S2 far 112-pg catalog
HEWLETT
PACKARDJi
HP-S7 sisas.ag i
32K Bytet tiandard \
32K Mem. mod. 239.00 >
MK Mem. mod. 337.00
)28KMem.mod. S37.0D
aZ907A
B2908A
B29D9A
HP-BSA
HP-125
HP-^IC
HP41CV
HP-41
HP4I
HP4;
B2I06A
)2170A
t2160A
121 El A
a21S2A
HP-97
HP-t7
HP32E
HP-33C
HP34C
HP-37E
HP38C
HP-11C
KP-12C
<290«A
U9I11M
989SA
2E1IB
2S0IA
NewTI-g9/4A-4flKRAM
lOOK Tl pans w/Extended Basic
nrTI-LQGD Re:St300 K/C.5$689.95
Computer
CompMlat
Prog. Kienrdic
Prog.tciefititic
Card readei
Plrntar
Optical w>rv<S
41 C Memory module
41C Quad mam. mod.
HP-ILinlerfice
Cauetlt drive
HPIL printer
Prop. Kien/prmter
Hand-held fulhy proi]
Scientific
Prog, uienlific
Adv. prog, seiemific
Buijneu
Prog, financiai
Prog, tcrtntitic
Prog, financial
IrilfttCt printer
S%" dual driTT
8" dual drive
Impact piinlef
Letter qrial. pt^
Ma noraae ROM
tROM
85'ISDOZ Plot/print
85-151)03 l/DROM
85151)04 MtriiRDM
aS-15005 Adv. prog. ROM
85.15007 Aiiambltr ROM
82903A 1EK mem. module
82937A HP-ia interfeci
t29]9A Serial inlariace
12940A GPIO interftce
82941 A SCO interfeea
I2949A Parallel fV. int.
HP-7470A Ni-ip<ed color
_jTpfie pltr ve/intrfc
i19B5.D0
1985.00
IBB.OO
248.00
1«9.0<]
297.00
39.00
28.00
84.00
109.00
437.00
397.00
584.00
309.95
53.95
93.95
114.00
77.95
119.00
114.00
127.00
E19.0O
IE9g.0O
4499.01)
2999.00
2999.00
124.00
124.00
239.00
124.0C
124.00
239.00
169.00
328.00
338.00
408.00
431.00
239.00
1269.00
While uippfy l«$t)
CLOSE-OUT ONPftiHTEHS
PAPERTIGERbyl DS
•4I**' n,,t,i £x,< Coil iv* Siif
440 a 1Q34.00 733.00 09.15
44S 0 a9«.00 53S.OO 5JJ.95
*45 795.00 556.00 SIS.N
CENTRONICS
739-1 395.00 BSO.DO UOJH
737 895.00 GIO.OO 4»t.00
lisxas Instrumeiits
Home Computer
10" color mctoilor high rtt
32 K memorv module
Extended B»ie
Speecil tyntheiiztt
Diik memorv ■''■''*
Tckphone couplet (mod»m)
Printer (ulid Ttiic)
TI-LOGO
TI-99/4A
Only
$29995
HETAa Vour Coif
374,95 339.95
399.9 b 314.95
100.00 75.00
H9.95 129.95
439.95 3S4.95
;24.95 189.95
399.95 319.95
250.00 99.95
MONITORS
T?^" Vaur
Nifh retolutron. nwmbef one uiltrr Prw' Coir
VM4U9 9-e&W 190.00 1S9.3S
VMa215 IS-B&W<bilMgiittai) 149.00 II9.H
0MSID9 9"Gr«n vjmij«.,«om. I0O.0Q169.JS
DW012 i:"B&w no.oom.K
DMI112 l2"Grttn ^SDOOZIM.IS
DMCEOl 3 13 - Colsr. hr quiliiy <TD.OO )9«.9S
DMCin 3 13" Calsr RGB hi in HS.DO m.ii
Dicm: iNEW)i;'Bsw 17900 issis
0M2112 INEW)12-Gi«0 199.00 1S9.99
FiH w/etM chiB el tacii SifniD nannef «M S49.M tCO p«n netcA
lujOiwtl la JM./ 0A nrw ncclnr a or^4/jl
^mi commodore
5K PeriDiHl Campuier VIC^CU
(Expands to 32K1 Woikl with any TV!
Rrl3il:S300.00 Your SPECIAL Coir.S2S9.95
FREEwitfi purtliirf VIC-20 one 149.50 LCD Pen Watcfi!
Commodore Oitaiette Rscoider
for VIC-20 Your C::st:$e8.95 We larry all peiiplKrilt.
software & access.for the VIC-20 (we will beat any price!)
ATARP IN STOCK
COMPUTERS
FOR ATARI 400 & 800-
GHOST HUNTER (similar Id Pac-Man)
Disk $34.95 Cassette S29.95
Modyl Rcij.i Yt)i,f Coil
SOO lOK 108000 S89.9S
800 4aK 128000 789.95
BOO 1G0K
[800-32K + 128RAMdiili| 1299.95
810 Oisl( drive 600 00 469.95
Atari VisiCalc 700.00 169.95
825 Impact F>ti 1000.00 779.95
—ATARI 400^
Personal
Coinpucer^
System
SUPER SPECIAL -ATARI 400 I16K)
ReiailSS95 0D Youi Cost S299 95
100 Ling, uid opr. 149.95
S77S00
hojiimnubii
Color TV (44rnt
Youf Cost:
$13995
—^ Auri'j game cannage
Pac-man $27.95
Epson
-l PRINTERS
V»ur Cow
MX70 S299.9S
MXU virilh |t(fira< 4*9.91
MXIOFT " - 9J4.go
MX1D0 ;t9.oa
(iphtnx fJnp 95.90
[«WTTfL
iELECTWjrUC5'
iNtEluViSiCm
$
229
i95
fnail S325 00
aninutEll TV gamel
I D S Piltm Printeri-
& Software for Apple Computers '
'call lor our LOW. LOW prices! ^^^,
Immediate delivery- «,„,/ q^^'
132 column {color) 1995.00 179S.O0
80 column (B & W) 1 196.00 999.00
lOOdaX Hi|h OiitMy ttoniiori
Modal
100
300 G
Coloi I
Color II 13" Color, RGB input.hi resgrephis, s^t
Color III 13" Color. RGB 240 line lemlntjon
Description
1Z''BAV, 12HH!
12" Green, TSMHi
13" Color, NTSCmmp.
Rei4«J Cnii
130.00 149,00
269.00 199.00
nput,audl(i amp a tpkr 499.00 359.00
1295.00 799.00
Intion 699.00 459.00
1<?6
COMPUTE!
July. 1982. Issue 26
He may discover a magnifi-
cent ark, which acts in his favor
if, and onlv if, lie lias certain
tuagic in liis possession.
If he uses his powers wisely,
lliev will hasten his quest and
safely retmn Iiini to Camelot and
the Crown.
King Arthur's Heir is avail-
al)lc now on disk for the Atari
4()()/S()() (32K) with joystick con-
troller. The suggeslecl retail price
is,S29.95.
KI')'X
r.O. Hm t2-i7
Mountain Vinr. CA 94040
Microcomputer
Index To Go
Online With Dialog
Microcomputer In format ion
Services, piil)lisiu'rs of .Micro-
computer Intlex, has announced
the availahility of Microcomputer
Index on the Dialog Information
Retrieval Service. Tiic index will
articles from 32 periodical
sources including: BYTE, In-
foWorld, InlerfiKc .Age, C'reativc
Coin]niling and COMPUTE!. I'he
information covered includes
microcompnler articles, .software
rc\iews, hardware reviews, book
reviews, new product descriptions
and more.
Kach citation contains an
abstract describing the article,
complete bibliograpliic informa-
tion and assigned descriptors.
The printed version of Micro-
coni|;)uler Index, wliich is pub-
lished c]uarlerly, is $30 per year.
For additional information,
contact;
MicritrnmfxiU'r hi/lt-x
2464 Ei Camniv KmL Siiilr 247
Santa Clara. CA 95051
(40,S)9S4-1097
Dialog hifonnaliaii .S'cm'/cv.v
3460 llilhiew Avenue
Pal,, Alio. CA 94304
(4n)S5S-37^5
l>egiii online service with over
10.000 citations during the
summer of 1982.
Microcomputer Index,
u hich is also availai)le in a jirinted
\eision. began publication in
1980. The index is a subject and
abstract gtiide to microcomputer
Disk-O-Mate For
CBM Disk Drives
( )piinii/cd Data .Svstems an-
nouiues the PH-()()3 I)isk-()-Mate
for Connnodore 2040/4040 disk
drives. With Disk-O-Mate the
user now has write [irotect
switches/indicators for each
drive, a power ON indicator and
audible erroi" beeper. 1 he ease
of write protecting dri\es by
switch versus diskette laliels
encourages good operating pro-
cedure to prevent accidentally
erased flies, fhe power indicator
and error bee})er provide valu-
able disk unit status to the
operat(jr.
All swil( lies and indicators
are mounted in a small (2'"x3""xr")
control box thai may i)e placed
on ilic disk unit or neai the com-
puter. The control box connects
bv cable to a ciriiiit board ^\•llicl1
"piggybacks" onto a 2040/4040
inteinal lonnector. Installation
invokes simple recomiection of
internal disk unit tables, which
can be act:oiiiplislied without
s|)ecial tools or skills or auv
soldering. Full instruciions arc
provided.
Disk-O-Mate is shi]j]x'd iully
assembled and tested. Price is in
the $70-$<S0 range.
Ojitiiiiizi'fl Data S\sti'His
!\().H,i\595
Plaa'iitia,CA 92670
i7 1 4)966-320 1
Educational Game
Drill From School
Courseware
Journal
Students oi any age may n()w
begin to find the tvpewritei' and
c()m]nitei keys by loiK h and
without looking, in a new eduta-
tionalK designed game drill by
Scho(.)l C^ourseWare journal
{previously Corse Ware
Magazine).
"4A'I'IN(i" presents on the
screen the names of the keys (or
a single tvpewriler row. 1 his
presentation encoinages learners
to keep their eyes away from
tfieir fingers. .4s the user re-
sponds to letter or chaiactcr cues
correctly, the key names begin to
disappear from the screen. If a
SMITH-CORONA
TPI
^699
Letter Quality
Daisy Wheel
12CPS
Low Cost Text
Printer
OTHER GREAT
PRINTER VALUES
NEC 8023 t479
NEC 7710 J2299
Okidala 62 S479
Olci<I(taB3 S719
Epson MXBO $429
Epson MXMFT S519
Epson 1W 659
Diablo 630 $1975
Citoh Prowrlter S479
CBM/Dlsblo Special S1649
Trondcom 100 $269
Cefitronlcs 739-f $479
Cartronica 739-111 $579
computer mail order
east
800-E33-8950
In Pa. Call (71 7) 327-9575
477 E Third St.
Williamsport, PA 17701
west
800- 648-33 II
In Nev. Call (702) 588-5654
P.O. Box 6689
Staleline,NV 89449
ATARI
«
«
n
n
!
«
N
R
n
n
»
n
n
n
n
n
N
n
■
800 ('»») 649
400 (16 K) 319
410 Recorder 74
810 Disk Drive 439
822 Printer (THERMAL) 269
825 Printer (80 COLUMN) 589
830 Modem 149
850 Interface 164
853 Memory(i6K) 79
ATARI SOFTWARE
4002
4003
4006
4007
4008
40O9
4011
4012
4013
BASIC CARTRIDGE
ASSEMBLER EDIT
SUPER BREAKOUT
MUSIC COMPOSER
SPACE INVADERS
COMPUTER CHESS
STAR RAIDERS
MISSILE COMMAND
ASTEROIDS
45
45
33
45
33
33
37
33
33
4B3
484
404
405
4106
4117
ai26
8121
813
THE PROGRAMMER
THE COMMUNCATGR
WORD PROCESSOR
PIUDT(EOUC)
PROGRAMMING 2
PROGRAMMING 3
MICROSOFT BASIC
MACRO ASSEM&EDIT
CAVERNS OF MARS
52
299
110
99
21
^^
66
65
29
CALL OR WRITE FOR FREE CATALOG
COSMIC COMPUTERS
RD.
UNLIMITED
SHIPPING EXTRA S2 MINIMUM
PRICES SUBJECT TO CHANGE
CALIF. RESIDENTS ADD TAX
228 N. PROSPECTORS
DIAMOND BAR, CA
91765
OPEN 7 DAYS
8am- 9pm
(714)861-1265
*
*
er Products
Tara Coiiipiiit'i i'lodiiti.s
'MriH Smirluvcslfni Blvd.
On-iiaid I'liik, N\- Mil.'/
(71f;)()(i2-72l9
Tai;! (:i)iii[)LaL-i I'lodiuss
l(k').') Sisnu-t Kd., I'liii :il)
Mississaiiga. Oiuario
Canada L4\V IZ!
(4lli)l)24-;iC).").')
Introductory
Offer ^j^^,0
PUT AN END TO YOUR
ME.MORV EXPANSION
PROBLEMS!
With the only logical choice for 48K
mernoiy ex[jan.sion of the Atari 400.
Upgrade with the new Tara C'.ompuiei"
48K RAM card for Lhe 400.
Features;
• Easy iii.stallaiion.
•Cooler, le.ss power hungry operation
compared to standard H5K or 32K
products.
• Uses state-of-the-art fi4K Dvnamic
RAMs.
• E.xtends 400 useable incinorv to 48K.
• Allows liigher perfoniiante 800 soft-
ware lo be run on your 400.
• Quality construction with golcl edge
connector.
• Allows lor disk operation.
Increase the performance of vour
pei'sonal system efficiently and econo-
mically with the new Tara Computer
48K R.A\f card. Av:iilat)le diret t from
I^ara Cioniputer or froni select dealers.
I'LL
.SHI
'.s
I'l'INC
(Dealers' Inquiries Welcome).
W8
COMPUTE'
July, 1982, Issue 26
cue is missed, Lhc key name will
reappear lo help tlie user. The
object ()[ the clriil is lo make all
the key names disappear from
the screen. A summary of speed,
accuracy and score is presented
at the end of each game with t:he
previous best speed, accuracy
and score also displayed.
Students are encouraged lo
double the amount of their drill
In the question DC) VOL' WISH
to TR^' TO BKAT YOl R
SCiORK?
Volume 2, Number,'^ of
School Courseware Journal,
wiiich includes the two programs
TYPING ■ and "SIGN DRILL,"
costs if 1 5.95 for the cassette
version ot the twcj programs (and
$6.50 for each program when
included in a school year subscrip-
tion). The programs are availaijle
on cassette or diskette for the
Apple II lfiK,['RS-S() 16K, and
PET 8K microcomputers.
For a free catalog:
Srhool (^iiiiiwi'W'fiir jiiiinnil
■I<:)I9 X. MilUmmli.Siiitr 22211
Fresno. (.'.,-\ 9372(1
Data Perfect Atari
From UK
LJR Knterprises, Inc. aunoimced
the release of its newest program
Data Perfect .llari, lor the Atari
. 100 and 800 compuler. \Vritten
in machine language. Data Per-
fect requires no disk swapping,
and is f'ullv interactive with LJK
Wort! Processor, Letter Perfect.
This user friendly program
allows the operator lo design his
own screen mask. The single-load
program, which is menu driven,
lias incor]M)rated into it a utilities
.section, as well as a report gener-
ator and a mailing label gener-
ator. Multiple searches and sorts
are allowed. Ciomplete formula
operations, as well as mathemati-
cal operations, may be performed
on and between fields. The pro-
gram supports one or two disk
drives, and requires a minimum
of Wlls. memory. Use with anv
parallel printer is allowed. The
inlroductorv cost for the program
is.S09,95.
LjK Kiilfiprixn, Inc.
P.O. Box 10827
St. Louis. MO 63 129
i3 1 4)8-16^6 12-1
Improved Version
Of DOS For
Atari 800
This command-driven K-DOS is
completelv compatible with the
Atari 2. OS and other related
software, in addition, K-DOS
supports the Atari 850 handler
which allows the use of printers
and modems.
K-DOS featines: a machine
language monitor which allows
commands.
The 40-page, K-DOS in-
struction handbook, with disk
attached, is easy-to-read and
designed to acquaint program-
mers with all of the K-DOS fea-
tuics, and will give personal
compiuer buffs greater reliabilitv,
flexibility and control. The hand-
book is di\ided into fue indi-
vidual sections for quick refer-
ence and also contains a pocket
Gommaiid Sinnmar\ Gard.
For additional details and
price information on K-DOS and
liie K-i)OS Handbook, please
contact:
John Ma lilies
K-B)TF.
17(15 Auslin. P.O. Box 450
Tntx. Mirhiiran 48()W
(3f3)524-9878
examination and alteration of
memory in hexadecimal and
displays AT ASCII representa-
tion; interception of the break
instruction does not crash the
svstem, but takes the user back
into K-DOS; new, powerful
commands reserve and erase
memorv and may be executed
when the BASIC or Assembler
cartridge is in control; K-DOS
allows the user to create his own
New VIC-20
Program By RAK
Electronics
Budget II -a new home budget
program that maintains a full
calendar year's budget data on
tape for review and update, l^he
data requires input ol each
month's NET INCOME antl 16
budget categories. After all of
DISCOUNT
APPLE'
YOUR
LIST PRICE
Daiid s Midnight Magic
Titfi Arcade Wachine
Tiacit AtliC*
DOS Bqss
Rastef Bl«sler
The Wome ACuuunldnt
Hon^nn V
CiSlif Woitensiftin
SupciTerl II
MouS»«lt»ch
Bandits
Go'tjon
jeiiyiisri
Joypnrt
\\ II arU't
PFS IN^A InnpiQved)
Visicatc 3.3
ViSilrentl^Visiplot
Ceif+ng Ze'o
J 34 &*
*4 9i
SW
74 9S
34 95
150 00
31 9&
34 9S
?4 95
250 00
300 00
209i
! 25 0U
33 00
Zi M!
1700
21 00
iiOO
2i00
31 00
100 00
25 00
25 00
25 OO
29 9i
2)00
54 00
21 00
95 00
199 00
240 00
21 00
ATARI*
YOUR
LIST PRICE
r ««ttra«n [CI
I«as
33.00
~ siti Rtidtrs (d
»»
MOO
;; FrogD«Mai
34.H
25.00 ,
] auQ AMick It, d)
^ R«ftt«r BlMIV ld>
».86
21.00
2100
:: j««rD't«ii*r (d. ti
»»
2100
:: TAni VVizards id)
n Apfil* P*nlc (dt
2S.95
7S-00
21.00
G Malcn Hftcara (d)
»»9
21-00
C inrtilon CKIon (d. II
2<95
UOO
U Vl»lc»lc (d)
!»(«
194.«l
;j J«wbia«l<«r Id. t)
W»
21. W
:: Survlvlil/Adv«nlui* {II
24 H
IS.OO
:: ShiiirMi Aiii«n» (d)
»H
2»«1
.1 Siv Wirrlof (dl
W»
20 00
SOFTWARE
ACCESSORIES
TRseo-
YOUR
LIST PRICE
] Allan Arrn«di{t}
J S0tC* Fl9CkB{1)
~ SUr Scou! (fl)
' Lun«i L»nde«'(d)
i EHmintTor (dl
I Ulgill» AII«C)!41|
1 P\mrmtoiCi "Asixoida ' (i)
: Cruiti^Crumba
& Chomp (dj
J R«scue al Rigal
;: Morloc's Tow«r {l|
: ln»iiilon OnonIO
Compulfrf StOChl
tna BOndA ir]
~: SuMr Nov* (fl!
I Dittnse Comnand in
■. G»i«ciie flivoiL/tnori |t]
SUM
18.«
20 «
Z0 95
MM
14 96
20 95
».»
19 K
24 95
IfiOO
19 95
15»
1495
11.00
1S.O0
17O0
1TO0
16 00
1100
11 00
22 00
22 00
16 00
1S00
1200
1800
1200
11 00
D = Di3k T = Cassette C = Cartridge
STROM as
Systems, Inc.
P.O. Box 197
Plymouth, Ml 48170
(313) 455-8022
Phone orders accepted 4 p m. 7 p.m. EST
MANY MORE PROGRAMS AVAILABLE
WHITE OR CALL FOR FREE CATALOG
CP/M*
YOUR
LIST PRICE
Z dBjM II
■J CoDdor III
IZ Ou4Ck Scrwn
C CclcSlar
D B«ilc H
D CPrM.TR&WMotfll
C Sup*fC*IC
in Spvtiaur
V T«»l Wfller III
■n SiBlpAk
Z: BSTAM
t7W.O0
906-00
V4B0C
495-00
2»00
3«00
1&5.»
2B5 00
250.00
125-00
4B5 00
525 W
717.00
124.00
307 00
190 00
24900
176-00
212.00
150.00
100 00
357 00
T45 00
SPECIALS
Zenith Green Screen
S120.00
Moniior
Verbatim 5% incti
26.00
disks
Box ol 10
Atari Joysticks
6-00
Include Syslem Requirements Witti Orde'
Address_
City
State
Ml Residents add 4% Tax
; : Payment Enclosed , ' C.O.D- Add SS!"
'. Visa " Mastercard
« Exp. Date
Sipnat u re ^^^
AddS2.00ShiRpino
I
UAAAlAAidhh
AAlMBAli
OB
HAlAAi
nroBB
MTG^^'s'llil^^^
J^ „ ATARI SPECIAL OF THE MONTH
REG $1957
ATARI 800 w 48K
810 DISK DRIVE
850 INTERFACE
EPSON MX-80 OR
C.ITOH8510
PRINTER & CABLE
NOW $1849
ATARI ^^ ATARI
800 ATARI 400
, $679 S329
ATARI 800 16K
w48K
ATARI 400 16K
810 DISK DRIVE
410 PROG REC
850 INTERFACE
820 IMPCT PRINT
822 THERM PRINT
825 80 CL PRINT
830 MODEM
16K RAM MODULE
32K RAM MODULE
48K RAM MODULE
679
789
329
449
84
189
264
264
629
134
84
125
249
PASCAL AVAILABLE
REQU1RES2810 OlO
DISK DRIVES iJ»H£.
M'SOFT BASIC 69
AXLONRAMDISK 429
VISICALC 159
ATARI WORD PRO 119
PER FINN MNGMT 59
ASSEMBLER/ED. 47
STAR RAIDERS 42
CAVERNS OF MARS 32
PAC-MAN (CART) 35
VOUKE TALKING.
Tl'PE-'\-'rU,K"
$329
CALL TOLL FREE
1-800-343-0854
In MA (617) 969-1790
TtM/rff I data
I systems
Z-89 w48K 2075
with 5 1/4 DISK DRIVE 2295
Z-90 w 64K 2295
with 5 14 DISK DRIVE 2549
Z-47 8' DUAL DISK DRIVE 2995
SUPERCALC 225
^^ommodore
UIC=20
$249
OUR LOW
PRICE
DATASETTE 67
1540 DISK 525
EXPANSION MODULE 145
1515 PRINTER 345
8K MEMORY 52
SUPER EXPANDER 59
PROGRAMMER'S AID 52
VIC AVENGER 25
INTRO TO BASIC 21
CALL FOR VIC-20
SOFTWARE
DISCOUNT PRICES
MTG Technical Sales
281 Needham St., Newton, MA 02164
Out Of State 800-343-0854 - In MA 617-969-1790
Do not send cash. Personal checks lake 2 weeks to clear. Add 4% for
MasterCard and VISA. 20% deposit required for COD. UPS charges
added. We cannot ship to P.O. Box. All prices subject to change
without notice- Delivery subject to availability. In-store prices may
vary. Not responsible for typographical errors.
IN STOCK ITEMS SHIPPED WITHIN 48 HOURS
WE
CARRY A COMPLETE LINE OF MICROCOMPUTER AND VIDEO EQUIPMENT
AND ACCESSORIES CALL FOR PRICES
200
COMPUTE!
July, 1982, Issue 26
the month's data is input, the
data is saved via sul)i-outiiie on
the Budget 11 Data Tape which is
included. The data can be re-
loaded iVoni the Data l^apc at
any later time tor review or tip-
datc. Buds^et II can display each
month's data in dollar aniomits,
perc eniage.s and ( olor bargrajjh.
In adthtion lo the 12 months.
Budget II can dis[)lav the total
\ ear amoinits and the month I\
average of the months with data
entered.
Following are the routines
available from the Menu of
Budget 11:
1. INPUr N'L-'.VV DATA: Allows
input of new budget data of each
of the 12 months in 16 budget
categories.
2. LOAD DATA TAPK: allows
the loading of budget data from
the Budget II Data Tape.
3. CREATE \E\V DA^IA TAPE:
allows the saving ol budget data
on the Budget II Data Tape after
inputting NEW DATA from I
above.
4. VIEW DATA: allows the
display of the selected month's
budget data in dollar amounts,
percentages and color bargraph
for the lb budget categories.
5. PRINT (YEAR) BUDGET:
Using an optional printer, pro-
vides printed copy of each month,
total year and average month
budget data.
Budget II can be used each
month to add the amounts of
that month's budget data and can
be saved over again on tiie Data
Tape. At the completion of the
year, a new \ ear can be saved tjn
a Nf'H' Data Eape allowing multiple
years' files to be maintained.
Budget II requires the \TC:-
20, 'VIC;-"l53(» Daiaseite and the
VIC-1 1 10 8K Memory Expander.
Budget II including documenta-
tion and Btidgel II Data Tape
sells for $9.95.
VIC FILE is a multi-purpose
cassette based file system lor
VIC. Commands include LOAD,
SAVE, PRINT, ADD, CHANGE,
SOR7\ DELETE, and more.
Expands to available memory
automaiically. .Allows |3rinier
option. Includes manual and
data cassette. Rec|uires minimum
of 3K expansion with yoiu- \ K;
computer. ,S9.95.
WAS RECORD, ati Am-
ateur Radio ]>rogram. main-
tains your Worked .All Slates
record for HAM Radio with a
need/worked/conllrmed stittus
and the call of the station worked
for each state. Sutnniary of
worked and confirmed totals and
pi inted routine. Requires a \'IC
and 3K memory expander and is
available on cassette tape ior
$6.95.
RAK Eli'clronif,
P.O.Box /5<S'5
Orauiii' Park. 11. 32073
Plug In BCD For
Apple And PET
Computers
Ocean Instrimientation Consul-
tants announces a low cost, gen-
eral purpose, BCD interface
module for Apple II and Com-
modore computers. Designed lor
the researcli laboratory reciuire-
ment, this imit provides an instant
interface to most O.E.M. lab
instruments from digital volt-
meters to mass spectrometers. In
operation, up to eight digits of
BCD plus status information,
such as sign, "off scale." etc., may
be directly entered as a BASIC
variable. At present, applications
hidude use with ORION 701A
and CORNING 1 12 pH meters,
H I .AC ]jarticle counters, and
MICROMASS mass spectrome-
ter. The standard package comes
with interface cable, user
specified plug and diskette con-
taining machine language sub-
routines and a demonstration
program. The input is expand-
able to 16 digits and the unit may
also be purchased with user
specific software, tailored for
special needs. $250.
BCD
model lOOP
ocean instruments
Ocftui In.\lntmrnttilH»i (■(i)i.\itl//iiits
5<S'6 Kiiii^.^Unfii Road
Peiin-dalf. Rl 02S82
New Education
Microcomputer
Literature From
Commodore
A new informational brochure is
availble from Commodore Busi-
ness Machines Limited, Scar-
borough, Ontario to maximize
the understanding of Oonnno-
dore microcomputer capabilities
in the educational field.
I he brochine, entitled "The
Educational Exjierience, " covers
all aspects of Commodore pro-
ducts as they apply to education.
Included are descriptions of the
foiu" Commodore product lines,
available education grants, edu-
cational software capabilities and
other features. Fhe service re-
cords are also described, as well
as the intelligent peripherals, the
full product line com])atibility,
the local supjwi I in the form of
materials and dealers, and the
networking capability of Com-
modore equipment.
For fiuther information:
Idx Kennedy
Market Support Manager
Commodore Business Machnie.'.
Limited
3370 Pharmttey Avettne
Agincoiirl. Ontario
Ml\V2K-i
(416)499-4292
SOFTWARE STREET
PRESENTS
^QQaSjM^
32 K ATAAJ 0(SK
$34.95
800 Computer 16K $639.00
41 0 Recorder $79.00
850 Intf. Mod . $159.00
830 Modem $149.00
Special Software Packages
The Entertainer $84.00
Star Raiders, Missile Command,
and Joysticks.
The Programmer $54.00
Basic Programming language,
Self teaching guide to Basic
and Basic reference manual
The Educator $1 15.00
410 Recorder, Basic programming
language, and States and Capitals.
TOP SELLING PROGRAMS
Missile Command $33.96
Asteroids $33.96
Invitation to Prog. 2 $21 .21
Invitation to Prog. 3 $21 .21
Assembler/Editor $48.96
Jaw Breaker $25.95
Cranston Manor $24.95
Dodge Racer $19.95
Star Raiders $39.96
Sammy the Sea Serpent $14.95
Krazy Shootout $35.95
Space Invaders $35.95
810 Disk Drive
. . $429.00
Call or write for
FREE catalog.
your
Prices subject to change
THE ABOVE PfilCES ARE RDR PHE-PAIDOBDERS.
Software Street
3392 Clipper Dr.
Chino,CA91710
(714)591-3061
We also feature tremendous savings from:
Atari
Atari Program Exchange
Adventure International
Crystal
P.DJ.
L.J.K.
Dynacomp
Quality Software
AvalonHill
Epyx
Computer Consultants
Synapse
Datasoft
United Software
On-Line
O.S.S.
Software Street
Software Street Is your mail order ATARI
discount center.
Shipping costs:
Software - minimum $2.00
Hardware - prices will vary (please call)
A
ATARI
ATARI IS A REGISTERED TRADEMARK
202
COMPUTE!
Julv, 1982, Issue 26
Promqueen
Cartridge For
VIC-20
The Gloucester Computer Bus
Co. Inc. Promqueen C'aruidge
provides KPROM prograinniing,
operating, and emulating capa-
bility for the Commodore VIC-20
computer. All necessary connec-
tions are made when the Prom-
queen is plugged into the VIC's
cx]jansioii port. The internal
programming \oltage power
supply includes current limiting
to pi event damage to the car-
tridge or the computer in the
event ol operator error or faulty
EPROMs. rhe Promqueen sup-
ports 2716, 2732A and 2732
EPROMs.
The Promqueen contains
four kilobytes of RAM for testing
programs before biu'iiing them
on EPROM. A MIMIC switch
permits an external computer to
access programs written into
Promqueen RAM. In MIMIC
mode a jumper cable connects
beiwccn the Promqueen zero
insertion force socket and the
socket in the external computer
for which an EPROM is desired.
This feature allows use of a VIC
with Promqueen as a develop-
ment .system. A DIP switch deter-
mines which of the four VTC
expansion blocks is occupied by
the Promqueen. This allows the
I'romqueen RAM to be used to
expand the user BASIC memory
of the VIC. It also allows the
Promqueen to be used in the
(iommodore Super Expander in
conjiuiction with otlier cartridges,
such as Commodore's VICMON,
without address conflicts.
EPROMs in the ZIF socket
can be run directly on the VIC. A
ZIF socket isolate switch permits
EPROM changes with the VIC
on. Thus a variety of routines
from different EI'ROMscan be
used to develop new programs in
the Promqueen RAM.
The Promqueen has a reset
Ijutton for recovery from crashes,
eliminating the need to store
programs before testing them.
A toggle switch sets the
Promqueen for either 27 1 6 or
64KRAM
for ATARI
ATARI 400®
ATARI 800®
32K BOARD
64K BOARD (tactory installed).
32K BOARD
64K BOARD (includes software).
128K BOARD (includes software),
$149.00
$289.00
$149.00
S399.00
$499.00
Featuring:
Complete software compatibility.
Gofd-plated contacts for long life & dependability.
90-Day warranty.
The Memory Mill
P.O. Box 317 Dept. C
Potter Valley, CA 92469
Phone (707) 743-1666
Repair of the 400, 800.
Custom Designed software & hardware development systems for 400, 800.
Dealer inquiries welcome.
FREE PRODUCT CATALOG, UPON REQUEST.
Visa
Mastercard
Calil, residents add 6'?% sales tax
■ATARI. 400, 800 are Irademarks ol ATARI. Inc
Accepted
ECLECTIC SYSTEMS CORPORATION
Order TOLL FREE 1-800-527-3135
RO. Box 1 1 66 1 6260 Midway Road
Addison, TX 75001 (214)661-1370
Authorized w^ Commodore service center
Sales and Service of the complete line of Commodore products
In a hurry? Check our modular exchange program
commodore
HARDWARE:
CBM 8032 Computer, 80 Column S1065
CBM 8050 Disk Drive 1299
CBM 4032 Computer 40 Column 965
CBM 4040 Disk Drive 965
CBM 4022 Printer 595
CBM VIC 20 Computer 259
CBM VIC 1515 Printer 349
CBM 8300P (DIABLO) 1799
CBM VS 100 Cassette 65
PET to IEEE Cable 33
IEEE to IEEE Cable 39
SOFTWARE:
OZZ 289
Wordcraft 80 289
The Manager (Data Base) 240
WordPro 5+ 319
WordPro 4+ 299
VISICALC 169
MUMPS for Super PET 299
CMS Accounting System call
Assembler Development
Package 77
BASF Diskette, Box of 1 0 30
ANS MUMPS Programmers Reference Manual SI 7.50
MUMPS Pockel Guide 2.00
Computer Programming jn ANS MUMPS 17.50
BS232 Interface for Commodore VIC 20 3995
EIO lias two serial asynctironous RS232 ports, two parallel ports
with tiancfsfiaking, one shift register, two 16 bit timers, and room
for Iwo optional buffer IC S- !B8 00
EIQ-C Alternate character generator ROtul board for screen display
allows you to display characters or graphics of your cfioice
Alternate characters are soft selectable, EIO board reouired Call for price
EIO-TX Terminal ROM for EIO firmware to turn your CBIV1 into a
communications terminal. Store and transmit from disfi to
remote host and terminal EIO board required 49.95
EIO-RS232 Cable tor EIO board- 28 00
BOOKS:
Commodore Software Encyclopedia
2nd edition
The PET Revealed
Library of PET Subroutines
PET Interfacing
PET Basic
PET and IEEE 488 Buss
9.95
19-95
19-95
16 95
12 95
15.00
OTHER:
EPROM Burner for CBfVI burns 2716. 2732 Si 2532' 89 95
Software lor EPROM Burner on CBIvl 1 5 95
DC. Hayes Smart Modem 239 00
ESC-1Q0 RS232 interface manual selector
-switch select between device A. B.
or C: switching 25 conductors.
Requires no input power and uses re-
ceptacle type OB25S 140.00
ESC-120 f^43 TTY-EIA.'CURRENT LOOP
interface uml — converts TTL level
signals from the M4i to EIA or 20ma
oulputs. Convert EIA or 20ma inputs
back to TTL level signals for the Ivl43
Single printed circuit mounts inside
the fv143 Comes with interface
cable 65-00
ESC-140 RS232 standard interface cable
kit. Build your own cable.
7 conductor 16.00
12 conductor 19.95
ESC-1 50 The Electronic Switch/Poller
allows a single computer serial port
to selectively communicate with an
assortment of peripheral devices. As
many as seven serial asynchronous
and SIX parallel devices may be
selected This concept effectively
creates a simplified multi-drop, pollea
environment. The computer main-
tains control of the network and may
seize any of the peripherals by trans-
mttttng a simple escape sequence to
the ESC-150 438.00
ESC-1 70 RICKETY IvIETEr-lndispens-
able hand-held tool for trouble-
shooting, checkout and installation
of RS232 type serial line communica-
tions systems 69.95
ESC-1S0 RICKETYTRAp is a small
hand-held device whicti when inter-
posed in an EiA/RS232 line can
monitor and trap on any specific
ASCII, binary, or control character
ihe RICKETYTRAp can also monitor
and Irap on any specific range of
characters bit selectable. This
device can also check for type of
parity being sent and proper framing.
The RICKETYTRAp is switch select-
able for 1 or 2 stop bits and can
operate at speeds of 150 to
9600 baud Call tor price
ESC-200 PREDITOR is a small micro-
processor with ROf^ firmware. RAM,
and 8 RS232 asynchronous serial
input/output ports. The PREDITOR
is available in either stand-alone, self-
contained, or rack-mounted models.
The PREDITOR can be programmed
by firmware 10 function as a prompter
and editor in a distributed processing
network, transforming 4 dumb
asynctironous terminals into 4 iniel-
ligent terminals communicating with
4 computer asynchronous input/
output ports. Call for price
ESC.861f^1 The DATA CONCENTRA-
TOR accepts data from a multitude of
inputs— printers. CRTs, parallel
ports, status lines, etc —then trans-
mits Ihe composite (multipleKedl
data stream down a high speed
synchronous serial line to a remote
DATA CONCENTRATOR The re-
mole DATA CONCENTRATOR
separates Idemuxes) the composite
data into its original form to be trans-
mitted to Ihe computer ports
Alternately, multiple computer port
data IS multiplexed, transmitted
down the high speed synchronous
serial line, demuxed. and finally dis-
patched to Ihe individual
terminals 350 00
Call for equfpment not listed
Order TOLL FREE 1+800-527-3135
1 0 AM n? 4 PM COT Monday through Friday
Texas residents call I +2 1 4-66 1 - 1 370
V/SA, MASTER CHARGE, MONEY ORDERS, AND C.O.D. "Certified Check" accepted.
Units in stock shipped within 24 hours, FOB. Dallas, Texas.
All equipment shipped with manufeaurer's warranty.
Residents of Texas, Louisiana, Oklahoma City and Tulsa, Oklahoma must add applicable taxes.
Be sure to write to the address at the top of this ad for more information. Dealer inquiries welcome.
20A
COMPUTE)
July, W82, Issue 26
2732A EPROMs, changing the
voltage as required. 2732s can
be programmed after readjusting
a pot.
A general purpose hex
loader program on EPROM is
included. The program loads
into the VIC's memory, freeing
the EPROM socket. The hex
loader permits convenient
loading of code for processors
other than the VIC's 6502. It
includes labels, block move,
offset calculation, number con-
version and more. Il also runs
the burn process, checks EPROM
erasure, and verifies burns. Soft-
ware for sKM'ing BASIC programs
on EPROM is included. The
user's manual includes step by
step instri!Ctions as well as tabular
summaries of the Keystroke
command options.
The Promijuccn cartridge
costs Si 69.50. [jIus shipping.
Gloucester Comjmter Bus Co. Inc.
6 Brooks Road
Glouceslcr, MA 01930
(617)283-77 i9
Career Planning
Moves Into The
Home
TSC, a Houghton Mifflin Com-
pany subsidiary, annoimced that
350 southern Calilornia house-
h(jlds now have access to career
planning and guidance informa-
tion. The Guidance Information
System (GIS), a computerized
career data base maintained by
TSC, is one of the services made
available during a six-nine month
Los Angeles Times Mirror Vid-
eotex experiment. Both two-way
cable and telephone lines are
delivering this information to
television screens in the Iiome.
Richard T. BuescheL presi-
dent of the New Hampshire-
ba.sed educational and informa-
tional sfjftwaie company,
explained that the computerized
GIS database is already being
used by over one million cus-
tomers at 4000 institutions across
the coinitry. The service, which is
ujxlaled and verified annually,
permits subscribers to quickly
identify and compare on the TV
screen options that answer their
individual vocational or academic
needs and interests. The awesome
information bank provides four
major categories of information
instantancouslv:
1 . The OcciifHitional Informa-
tion covers 875 occupations, with
descriptions of ie)lis, educational
requirements, training I'outes,
wage levels, working conditions,
and more. .Additional informa-
ATARI 800
16K $669
32K $749
4SK $819
ATARI 400
Hardware
410 ProgTam Recorder .
825 80 CDlumn Printer
SZO 40 Column Printer
830 Modem
850 Interface
16K RAM
Games
Missile Command
Space Invaders . . .
Star Raiders ....
Caverns ol Mars
Chess 34*"
Pac Han . . . 34"
Centipede 34*"
Asteroids - 34*"
Software
Entertainer 79"'' Programmer . .
Educator . 119"" Communicator
Apple Panic ({or Ataril disk
Raster Blaster disk
Pool 1.5 disk
Zorkl or II disk 3
Tumble Bugs disk
Mousekattack disk
Gorf disk
, 79
639
269
155
159
. 79
34*"
34'"
36*'
31'"
S4""
319"'
23*'
23-
27-..
A
ATARI
ATARI 810
- Disk Drive
Ck commodore
COMPUTER
VI&20
I he Irif-nJU iiimpuEFr
$249
Wliard of Wor
Ghostly Manor
Frogger
Jawbreaker
Soft Pom Adventure
Threshold
ELEPHANT DISKS
$449
disk
disk
cassette or disk
cassette or disk
disk
disk
Box of 10
31"
19*'
27"
23'"
23"
31'"
23"'
VIC Disk Drive
VIC Datasette
Avenger
Superslot
Super Alien
.luplt^r Lander .
Draw Poker
PRINTER SPECIAL
C.nOH Promriter $539.00
Parallel (NEC PC 8023)
Zenith 12" Green Monitor
499
. 69
23"
23*"
23*"
23*"
23*"
Prices Are For Phone/ Mail Order Only. No Sales Tax On Out of State
Orders. Ordering Information: We accept VISA/ Mastercard, Cashier or
Certified Check, Money Order, or Personal Check {AUow 14 days to dear). Add
3% for Shipping, Handling & Insurance, Calif. Residents Add 6% Sales Tax,
Credit Card Orders Add 3% Surcharge. We Ship All Orders UPS. Catalog ^l""
COUND
"^ ELECTRONICS
21999 Van Buren Street
Grand Terrace, CA 92324
(714) 783-0556
e
A-.
^
.e
►^
i^"^
r0
PUBLICATIONS:
CBM User Guide 7 95
CBMBasic4.0Ref Manual ..9 95
CBM Disk Manual 7 95
CBM Pnnlef Manual , , . , 7 95
MOS Hardware Manual 6 95
MOS Programming Manual 6 95
Tne PET Rewealed t995
,^ Library ol PET Subroulmes 19 95
Commodore SoUware Encyclopedia 9 95
CBM Programmer's flelerence Manual 16 95
CBM EQUIPMENT:
CBM «16 CPU (40 Col Screen 16K RAM) 790 DO
CBM 4032 CPU 140 Col Screen. 32K RAM) 990 DO
CBM 8032 CPU ISO Col Screen 32K RAM) 1090 DO
CBM 8096 CPU IBO Col Screen. 96K RAM) 1 590 00
CBM Micro Mainlrame (Super PET) 1690 00
CBM 2031 Single Dish Drive (170K per S.DisKeltel . . 570 00
CBM 4040 Dual Disk Orive (170K per 5'< Oisketlel ■.. 990 00
CBM 8050 Dual Dish Drive C Meg per 5-. Oiskellei . 1340 00
CBM 4022 Tractor Feed Primer 625 00
CBM C2N Cassetle Deck iNew Style) .' 65 00
CBM CPU/IEEE Cable 35 00
CBM IEEE/IEEE Cable 40 00
8023P Dol Matrix Prmler 1 136 Col . 150 CPS) 790 00
Tally B024-7 (7»7 Matrii) Printer 1275 00
Tally 8024-9 (7«9 Matrix) Prinlcf 1425 DO
eSOOP Letter Quality Printer (40 CPS) 1790 00
VIC EQUIPMENT:
VIC 20 (Includes HF Modulator) 255.00
VIC Single Disk Drive (170K per 5% Dishelte) 470 00
VIC Joystick '. 9 95
VIC Modem 102 00
VIC 8K Memory Expander , . 59 95
VIC Supef Expander 69 95
VIC 3K Memory Expander 39 95
VIC 2 Player Game Paddtes 19 95
VIC 1S15 Graphic Primer 325.00
VIC SOFTWARE:
VT 106A Hecrealion Si« Pack iCasseiie) 43 95
Includes Car Chase, Blue Meanies, "
Space Math. Slither/Super Slither.
Biorythm Capability
VT 107A Home Ulilily Si* Pack (Cassette) 43 95
Includes Personal Finance 1. Personal Finance II
VIC Typewriter. Expense Calendar.
Loan 1 Mortgage Calculator Home Inventory
VIC 1901 Vic Super Alien (Carlridge)
VIC 1904 Super Lander (Cartridge) 29 95
VIC 1906 Drav» Poker (Carlridge) 29 95
AMOK (Cassette) '8 95
VIC Avengers (Cartridge) 29 95
Snakman (Cassette) IB 95
CBM SOFTWARE: COMING SOON:
Wordcralt 80 Wordprocessor . 295 00 More VIC Peripherals and Sollwv
Word pro 4* Wordprocessor . . 325 00 CBM 8250 Dual Disk Drive
OZZ Dala Base System 295 00 Data Acquisition and Control D<
Tax Preparation System
Dow Jones Portlolio . . .
The Manager, ,«.... ^
COMING SOON:
295 00 More VIC Peripherals and Sollwvare
325 00 CBM 8250 Dual Disk D rive
295 00 Data Acquisition and Control Devices
200 00 uihmax
S90 00 Co mmodore 64
115 00 More VIC Soltware Gofl.
250 00 Omega Race, W.jarO ot Wor
All Items Insured
COD - UPS
Prepaid Orders Shipped Free
In Slock llen^s Shipped Wiihin 43 Hours
MASTEflCHARGE OR VISA ADD 3%
GA RESIDENTS ADD 4% SALES TAX
"CALL ABOUT
SUPPLIES"
^ MART
PO Box 77286
Allanta.Ga 30357
404-981-5939
\^^
0?
^.
^<
^e
J-'^
fO^ ' ^^\°^
^"^ . 00^ .n^^^
ss^
,\6
^^
c^'
^(®
Qp
l1&^
A0<5
nJ\C'
cp^
ATARI* SOFTWARE &
HARDWARE
at
DISCOUNT
PRICES
from
ADVENTURE INTERNATIONAL .Lisl Retail
ADVENTURES #1 THRU »I2 EACH (Ti 19 9b
LUNflfi LANDER (T/D) 14 95/19 95
R£4FI GUARD (T/Q) 19 95/24 96
STAB TREK 3 5 (T/D) 19 96/24 96
ARCADE PLUS
GHOST HUNTER IT/D; 29 95/34 96
ATARI
800 COMPUTER 16K 839 96
ASSEMBLER EDITOR iCl H 95
ASTEHOIDS iCi 44 96
MISSILE COMMAND (C| 44 96
STAR RAIDERS IC) 49 95
ATARI PB0GR4M EXCHANGE
CAVERNS OF WARS I T or Dl 29 96
EASTEHU FRONT (194 1) H ui Dl 29 96
AUTOMATED SIMULATIONS
CRUSH. CnUWBLE & CHOMP (I or D; 29 95
BICDCHEI IT or Dl 19 95
BUDGECO
BASTEfl BLASTER iDl 29 96
CAVALIER COMPUTER
BUG ATTACK lOl 29 95
CODE WORKS
IRIDIS tl (T/Di 9.95/12 95
IRIDIS n |T/Dl 15 96/18 96
DATASOFT
LE STIC* IJOVSIICK COMTftOLLERl 39 95
TEXT WIZARD ID) 99 95
GEBELLI
ANDROMEDA iDl 39 96
MATCH RACER (D] 29 95
K-BYTE
K-RAZV SHOOT OUT IC: 49 95
ON-LINE SYSTEMS
CROSSFRE IT or 01 29 95
JAWBREAKER iTor D] 29 9S
MOUSKATTACK iDi 34 95
THE NEXT STEP iDl 39 95
WIZARD* PRINCESS (Dl 32 95
OPTIMIZED SYSTEMS SOFTWARE
BASIC A* AND 05/A. iDi 160 DO
PERSONAL SOFTWARE
ViSlCALC iDl 199 95
QUALITY SOFTWARE
OS FORTH iDi 79 95
SPECTRUM COMPUTERS
GALACTIC CHASE lI'Dl 24 95/29 96
SUB-LOGIC
ADVENTURE ON A BOAT lUi 19 96
BLACK FOREST IDI '.. ig96
GHOSTLY MANOR iDl 19 96
SYNAPSE
File MANAGER 800 I Dl 99 95
PROTECTOR IT/Dl 24 g6'29 95
OUR PRICE
15 95
11 95/15.95
15.95/19 95
15,95/19.95
635.00
47.95
35.95
35.95
39.95
25.45
25 45
23 95
15 95
23 95
23.95
7,95/10,35
12,75/15 15
31 95
79 95
31,95
23,95
39 95
23,95
23,95
27 95
31 95
n 35
120 00
149 00
63 95
24 95
24 95
24 95
79,95
19-95/23-95
(C) ROM CARTRIDGE (D) DISKETTE |T) CASSETTE TAPE
REPRESENTING OVER 50 COMPANIES WITH 500.
PROGRAMS AND HARDWARE
Write lor a FREE catalog to:
COMPUTER HOUSE
P.O. Box 369. Dapt. 10. ManmiDtti Lakes, CA 93546
(714) 934-8538
rtrms FOR F/^STOEIIVERV. Iind carlKlid cllickl. montr grdgri or Visi or IMtlMrClKl numbar
jnd fixplrttlon diti Psrsanjl ctiacki ;aqulra 3 waehs to cl«ir ADD 51 SO tor p4>tigi Orrlars
HIV StOO 00 wi piy ihlpping All lotiign ordars idd StO.OO CALIFORNIA raildanti idd 6S
tii Pt£>s lublad Id clDngi
' ATARI rs ^B Iradamark Dt Aliri. Inc
206
COMPUTEI
July, 1982. Issue 26
tion is also available for armed
services occupations.
2. Tlie College Information
describes 3,300 two- and four-
year colleges, universities and
technical institutions in terms of
over 500 characteristics, such as
programs of study, location,
enrollment, competitivene.ss.
3. The Graduate and Profes-
sional School Information lists over
1 500 schools offering both doc-
toral and nondoctoral programs.
Degree requirements, placement,
financial aid, residence I'acililies,
and costs are all described.
4 . The Financial Aids Infor-
mation file describes in detail
national funding sources and
such as foundations, business,
the military, trade and labor
organizations, and religious and
charitable groups, in addition to
federal programs.
rsc
Box 683
Hanover, NH 03755
(603)448-3838
The VIC Enters
The World Of
Radiocommunication
C-onipulcr World in the Nether-
lands developed an interface
between the standard VIC-20
compLUer and a radiotransmitter
or receiver. It's easy to use. You
plug it in the back of the V\C., or,
if you have an expansion unit, it
can be put in the expansion unit.
The 4K machine language soft-
ware is in EPROM. On tlie card
you find a Morse and RTTY
converter and decoder, ^'ou onlv
need the output from a
loudspeaker or headphone. You
can eidier transmit or receive
R 1 r\' oi' Morse signals. On
RTTY you have all iiaud rates —
i.e.. 45.50,57,75,110,200 and 300
Baud. There are three pro-
grammable buffers, each of 150
characters. Five buffers are pre-
progranuned, with: Station de-
scription. CQcall, CW ID, Auto-
start message. The user can call
each of these messages with the
functions keys.
The Morseclecoder reads
every message in Morse code
between 67 to 60 words per
minute.
The callsign of the user will
be transmitted every 10 minutes
in Morse code.
There is also a version
for users who have an RTTY
converter.
For more information
contact:
Computer World
Hilvertsweg99- 1214JB
Hilversiim, Holland
31-35-12633
• 4 % • * * # ^Jl'-fc *
VISICALC: Home
And Office
Companion
Authors David Castlewitz,
Lawrence Chisauski and Patricia
Kronberg have compiled a com-
pendium of VisiCalc models in
VISICALC: Home and Office
Companion.
Fifty ready-to-use VisiCalc
models, complete with sample
print-outs, descriptive narratives,
and coordinate listings, are pre-
sented. Users enter their own
data in place of the sample data,
or substitute a label or list of
entries, to tailor the tnodels to
their specific needs. Algorithms
and modeling techniques provide
the experienced user of VisiCalc
V^^-^c^^
-JU^S^
Kith l^iblcki Kranbers
KistrallDnsb> L . O- Oiukman
with the opportunity to custom-
design new and useful models.
The models cover seven
areas of application: Loans and
Investments, General Business,
Inventory Control, Advertising
and Sales, Personnel and Depart-
ments, Personal Finance, and
Household Aids. All models are
designed to accomodate most
computers and versions of Visi-
C-alc. The models can be entered
on SuperCalc, too.
To place an order, con-
tact the B(Kjk Order Dept.,
(415)548-2805.
VISICALC:
Home and Office Companion
Osborne! McGraw Hill
$15.99 paperback; 1 82 pages
Neir Produrt relmscs are selcrtrd
from stilmiissionsjor reasons of
timeliness, available space, and
general interest to our readeis. We
regi'el that we are unable to select all
neit' product suhmissious [or publi-
cation. Readers should be aware llmt
we present here some edited version
of nuiterial submitted by vendor^ and
are unable to vouch for its accuracy
at lime of puhlicalion. Q
Lyco Computer Marketing & Consultants
At Lyco Computers we offer our expert services to help our customers make their first computer purchase,
schools establish a computer program, or evaluate multitermlna! systems.
717-435-5197
ATARI
I A Warner Communicalions Company
c lytli AIAKI INC
JULY
SPECIAL
32K MEMORY BOARDS - -^QOOO
for ATARI 400 & 800 with 1 year warranty! ! ^^
ATARI 800 16K $665.00
ATARI 400 16K $329.00
1 6K MEMORY BOARDS for vie 20 $ 99.00
ATARI HARDWARE
ATARI 800 16K .$665.00
ATARI 40O 1 6K $329.00
81 0 DISK DRIVE $455.00
41 0 CASSETTE RECORDER $ 75.00
850 INTERFACE $1 64.00
830 PHONE MODEM $1 59.00
825 PRINTER $585.00
CX4101
CX4106
CX4117
0X8126
CXL4002
CX405
CX4018
CXL4003
CXL4015
ENTERTAI
CXL4012
CXL4013
CXL401 1
CXL4006
CXL4009
CXL4004
CXL4005
CX4015
CX4107
CXL4008
GXL4022
CX8130
CX4114
CX4108
CX4102
CX4121
CX4123
CX4119
CX4125
CXL4007
CX4110
CX4103
CX404
CX406
CX40
CX853
PROGRAMMING SOFTWARE
INVITATION TO PROG I $21.00
INVITATION TO PROG 2 S 24.00
INVITATION TO PROG 3 $ 24.00
MICROSOFT BASIC S 69.00
ATARI BASIC CART S 45.00
PILOT EDUCATOR $109,00
PILOT HOME S 65.00
ASSEMBLER EDITOR S 45.00
TELELINK $ 24.00
NMENT & EDUCATION SOFTWARE
MISSILE COMMAND $ 35.00
ASTEROIDS $ 35.00
STAR RAIDERS $ 37.00
SUPER BREAKOUT S 35.00
CHESS $ 35.00
BASKETBALL $ 30.00
VIDEO EASEL $ 30.00
BLACKJACK $ 13.00
BIORHYTHM $ 13.00
SPACE INVADERS ROM $ 35.00
RAGMAN S 35.00
CAVERNS OF MARS $ 33.00
STATES & CAPITALS $ 1 2.00
EUROPEAN COUNTRIES ....$13.00
HANGMAN $ 13.00
KINGDOM s 13.00
ENERGY CZAR $ 13.0a
SCRAM $ 19.00
FRENCH $45.00
SPANISH $45.00
MUSIC COMPOSER S 45.00
TOUCH TYPING $ 19 00
STATISTICS $ 19.00
WORD PROCESSOR $1 29.00
PERSONAL FINANCE $ 62,00
JOYSTICKS $18 00
16KRAM $85:oo
THIRD PARTT SOFTWARE
for atari 800 or 400
AUTOMATED SIMULATION:
Invasion Orion $ 22.00
Rescue at Regel $ 24.00
Crush, Crumble, & Chomp $ 24.00
Star Warrior $ 35.00
ATARI PROGRAM EXCHANGE:
Eastern Front $ 25.50
My First Alphabet $ 25.50
KBYTE: K-RAZY SHOOT OUT $35.00
VIC-20 $259.00
VIC1010 EXPANSION MODULE $135.00
VIC1530 DATASSETTE $67.00
VIC1 540 DISK DRIVE $499.00
VIC1515 PRINTER $355.00
VIC1210 3K RAM $35.00
VIC1110 8KRAM $52.00
VIC1211A SUPER EXPANDER $53.00
VIC-20 SOFTWARE
VIC1212 PROGRAMMER AID $45 00
VIC1213 VICMON $45.00
VIC1 906 SUPER ALIEN $ 1 9.00
VIC1914 ADVENTURE LAND
ADVENTURE $ 3500
VIC1915 PRIVATECOVEADVENTURE... $35.00
VIC1916 MISSION IMPOSSIBLE $35.00
VIC1917 THE COUNT ADVENTURE ...$35.00
VIC1919 SARGON II CHESS $35.00
THIRD PARTY SOFTWARE
ALIEN BLITZ $ 21 00
SIMON $ 10.00
SATELLITES & METEORITES $ 21 00
KOSMIC KAMIKAZE $ 21 .00
AMOK $ 2 1 00
SUPER HANGMAN $ 1 6 00
SPIDERS OF MARS $45.00
To Help evaluate your needs or
If you wish to make a purchase
CALL US AT (71 7) 435-51 97
LYCO COMPUTERS
P.O. Box 10
COGAN STATION, PA 1 7728
208
COMPUTE!
July. 1982. Issue 26
Advertisers Index
AB Computers 44,45,137
ASAP Computer Products, Inc 101
Aardvark 79
Abacus Software 151
Advanced Computing Enterprises 111
Adventure international 23
Aibony Typewriter & Computer 164
Ttie Alien Group 125
Ampiify, Inc 149
Anthro-Dlgitol Software 137
Apogee Software 33
Arma Design Group 152
ArtwofX 85
Atari, Inc 7
Automated Simulations, Inc. 73
Batteries Included 133
Better Solutions 149
The Bit Bucket 110
Br0derbund Software 167
Byte Microsystems Corp 190
Byte-A-Bit Computing Co 173
C-Mort ., 205
CFI 119
CMS Software Systems 2,3
Canadian Micro Distributors 29,31
Comm'Dato Systems, Inc 114
Commodore Business Machines BC
CompuServe 38
COMPUTE! Books 157
COMPUTE! Books Programming The PET/CBM 134,135
COMPUTE! Publications 41
Computer Age Software 87
Computer House 205
Computer Moil Order 82,83,197
Computer Outlet 192
ComputerMof 79
The Computer Works 165
Computertlme, Inc 43
Comquest 43
Cosmic Computers Unlimited 197
Creative Software 16
DTC Software 115
Dataview Ltd 53
Delta Software Co 158
Don't Ask Computer Software 91
Dream Print Homes, Inc. 91
Dunham Software and Consulting Co 167
Dynacomp, Inc 47,48,49
ECX Company 158
Eastern House Software 195
Eclectic Systems Corp 99,203
The English Software Company 129
French Silk 145
Gloucester Computer Bus Co - 147
HW Electronics 107
High Country Microsystems 127
Human Engineered Software 131
Hypertech 139
ICS Micro Wholesale 1'?3
IDSI 17
Inhome Software 171
Intec Peripherals Corp 167
Interlink, Inc 38
Jini Micro-Systems Inc - 11
Krell Software Corp 65
Leading Edge IBC
London Software 173
Lyco Computer Marketing St. Consultants 207
MMG Micro Software 164
MTG Technical Sales 199
MW Software 185
Madison Computer 155
Magic Carpet 115,184
The Memory Mill 202
Micro Computer Service Center 187
Micro-Ed, Inc 77
Micro Printer Marketing 21
Micro World Electronix, Inc 145
Micromoil 183
Micromint Inc 95
The Microperipherol Corporation 111
Microsoft 4
MicrospecLtd 155
Mideostern Software 172
Midwest Micro Associates 115
Mosaic Electronics, Inc .19
NewEnglond Electronics Company 36,37
Nudmehi Software 11 1
Nufekop 139
Olympic Sales Company 195
On Line Software 139
Optimized Data Systems 96
Optimized Systems Soflwore, Inc 51
P. R. Software 141
P.R.I.C.E 193
Pacific Exchanges 20,26,62,86
Percom Data Company, Inc IFC
Peripherals Unfimited 32
Philadelphia Computer Discount 161
Precision Technology, Inc 115
Pretzeltand Software 143
Professional Software Inc 1,9
Program Design, Inc , 69,167
The Program Store 70,71
Protecto Enterprizes 163
Quantum Data, Inc 113
Questar International Inc 117
Quality Software 105
RAR-TECH 185
RC Electronics Inc 25
Random Access Computers 147
Random Access Microware 127
Renoissonce Technology Corporation 39
Royal Software 169
SJB Distributors, Inc ..,..103
Santo Cruz Educational Software 63
Sheridan College 65
Sky les Electric Works 61,158
Small System Engineering 35
The Software Connection 129
Software Galore 38
Software Street 201
Solidus Internatinal Corp 59
Sport 'N Sound Electronics 204
Starbound Software 33
Strategic Simulations Inc 13
Strom Systems Inc 199
subLogic Communications Corp 67
Sunrise Electronics 185
Sunrise Software 25
Swift/ Softwore, Inc 153
Synapse Software 15,26
T.H.E.S.I.S 65
TSASA 147
Tara Computer Products 197
Tayiormade Software ...147
Telegomes ■ ■ 191
University Microfilms 158,171
VERVAN Software 129
Victory Software Inc - 145
VixeL The Code Works 149
Voicetek 39
Wunderware '''15
c
S2
CO
0)0)
11
o
■0
D
^ il 1
Ik
oc
ica/Air M
i/Air Mail
ell able c
i- U >-
(D-s; c
Eo::'.
< O >-
_ _£ n
S^B
c< S
in
1 u<5
z>
t ^ (1)
0
^< "5 o
x:
fi'jz O D
"*"
OJ t tot-
Q>
> o _~ D
1 ^<^5y o
^a
D
^ H? m c
UJ
S D<-E.Q
^^
O "O
CD Q) < o
0.
2
on rat
Cano
Europ
Middl
South
Intern
■^ ooooo
.y- o o o o o
LO
o
Q CO 00 CO odco
E
®
o
^ </><jT- </></> to
"D
^ nnnan
0
z
?
<D
o
■>-
0)
(■■
lO
o
(U
■>
o
X
n
LU
f
L
o
u
()
( 1
c
(U
a
-4
C
. cQ y
^co 0
0 0 0
£ o o
^1
§^
o y
o §
OiZ
E.g
0) (1)
£ E
>^ >■
0 o
CL Q.
n
>
o
u
0
O)
o
u
u
o
n
$
Ik
o
UJ
o
d)
n
11
(1)
0
*
E
n
u
0
15
n
n
a>
iJ
Q
^
I— >" cmSfflsdiSiD
Q (D Oct isc^ Kc: mCi:
O
D
D
lL O.
^ Z
D o
0) o
E >■
o 2
U -5
(1) d) Qj (i>
J ? J ^
a> a) Q) Qj
* DD n □ n
■ z
< r-.
5 u
< =5
(1> 0! OJ 0} Q)
0 0 b 5 5
52 S 5 5
nn □ a a
c
o
B
y
Q
a .
o s
0)
0)0
P 0)
in
It
c ©
o
2o of
ai>; (J o
n o D -^
0) OJ
a> 0) a
3 5 5
<u <i) u
S
o
If
o S
ID
0)
D DD nnn
O (DO
o 5 5
C DD
03 a> a>
boo
SS2
nnn
3
o
>-
o
D
D
3
O
o
"O
o
5
3
N
of
n
3%
IS!
S2
"el
^o
I
c
Q.
o
o
C/5
o
□
0)
c
o
0)
>
o
JZ
5 5
a
Q.
<
z □
a
E
o ^
O <^
20 D
c
8.0-
^n
OJ - m
~ TD O
0 o !:
(D 2 o
I-
0 ffl ;=;
^ — • trt (J
=1 o
o-
C cO
-•e-o
,5 3^^
t^t^co
^^^Tf
^ .- O
0 n OJ
0OO
,
ooo
0)
ooo
J=
oo-q-
^
CMfOlO
o
<jy<rKjy
DDD
a
X
0)
a
c
o
o
0
_i E
> <
DD
nn^
®
Ul
g
u
0
u.
-1
-1
c
CO
«
O
00
to
2
03 V
no
to
o
o
O
■
o
o
CO
0
u
n
D
J
O
z
u.
u
c
i2
8 s
(0 ^
0)
0) o
o OJ
5 O
u
-dS
3
0)
rn
"
_J
CB«
(11
VI
n u
u
-1
(J
fc
r
to
Q)
r-n
(11
*(0
h
(D
T3
0)
a- *
O "
0)
a
X
LU
1
n
^^
()
^
D
o
s^^
JS
:> o
n
□ ^
X
LU
a.
S
o
o
-I
0 0
o
o
a
s i
D Si
< = - r.
l& %
0 3 0
a o a m
o. Eg ^
01
T3
5 S
£ O
== "^ II ll §
i St
O 0.0.
D
S
a
0
O
CO
E
D
5
-&1
u
CD ^2
CD ^2
^ =^ C
O O m
Z X Q
Oai<e
-M O N_
x"2
<D go
533
8 o
o
CD
CD
en __
Ocn<9
•^ OH.
O n>
(D§ Q
S 3 G
0^0
CD 5^
(0
D"
O
O
O
o
CD
O
o
o
CD
o
Ca5
ro
iC
"^C/5
r- ^^
sz
sm
iC/3
?c/)
n
roTI
-m
S"D
ffll-
05 ^S
e
0 -^
r-
000
> 00 !!]
<3
o
CO
Q
(O
Q
N
3
DD
C
C/)
-n ^^^
^2
sm
%(/>
10)
s^
^rn
c-p
si—
%<
Ui
?^
>
|—
r
7:
7'
^
H
-n
m
u
m
D
en
H
5
H >
IF
m
0
rn
ni
>
>
u
JU
m
m
m
w
^^X.Vf^:
'^mh
SAVE 6 INCHESJO POUNDS. AND ^80a
On the new, siicked-up.
uimmed-down Starwriter F-IO.
It's C. l[oh's latest genera-
tion of letter- quality printers.
It cranks out flawless copy
at 40 cps; and its full 15'
carriage lets it double in brass
for both letter processing and
business applications. You
can plug it into alniost any
micro on the market (serial or
parallell sjmply by plugging it
in. And then rnake it keep on
trucking with inexpensive,
easily available Diablo com-
patible daisy wheels and
ribbons.
In Its serial mode, it can
print just about anything
(including boldface, under-
lines, subscripts and super-
scripts!, and snap the carriage
back to start the next line
in less than a second. In its
line mode, it prints in both
directions, for even faster
throughput.
While making about as
much noise as a cat walking
on Kleenex.1
it's a nice, portable 30
pounds- about 10 pounds
lighter than the Starwriters
before it. And it stands
exactly as tall (or precisely as
small! as a dollar bill.
Speaking of which:
Incredibly, the Starwriter F-10
sells for about the same
preposterously low price as
its predecessors. Which is to
say. about S8C0 less than a lot
of other printers that don't
even come close to measur-
ing up. Or even better. . .
Measuring down.
Distributed Exclu-
sively by Leading
Edge Products, Inc.,
225 Turnpike Street,
Canton, Massachu-
setts 02021. Call: toll-
free 1-300-343-6833:
or in Massachusetts
call collect 16171
828-8150 Telex
951-624.
LEADING
EDGE.
COMMODORE Wmi
THE WONMR COMPUTER
OF THE 1980s. UNDER sSOOr
-WILLIAM SHATNER
W^VJ}
nil Kt •*»*• ai^ OP an do f?^ ^
:-*■/•'** i» a M J i< il '5i .f, — *_..
•'- - -^ Ji« p-j r^Jl ^f, f^g g,g ^j3
* i. . -- M- tivt rtPfl *
"The best computer value in the
world today. The only computer
you'll need for years to come."
r
VIC-20® VS. OTHER HOME COMPUTERS
Pr(jdii€* Fcatun*
Commodore
MC.20
Atari'
408-
<(9/4A
TRS-SO
Color
Computer
I'ncL' ■
s.2y').95
S.l'W (10
S454(Xj
S^WM)
MaximumRAM Mcrnnr}'
.<:k
I6K
4SK
32K
Kcytxari) Style
I-UIISIK-
Tvpe*ntcr
■ Style
Flat
Plaslie
Membrane
Full-Siic
Tvpewriter
■ Style
CaJcuklor
Sl\k
^J
Number of Keys
66
57
-18
^3
1
Proiirjmmable
Funclion Keys
J
0
0
0
Graphic Symbols
On Keyboard
h:
0
0
(1
Displayable Characters
si:
256
192
256
Microprocessor
6502
6502
TMS9900
5809
Aecessiblc
Machine Lanj:u:i(;e
YKS
YES
YES
YES
L'ppcr'l-nwcr
C[isc Charaflers
YES
YES
YES
NO
Operates \sith all Peripherals
iDisk. Prinierund Moderns
YES
NO
YES
YES
Pull Screen Editor
YES
YHS
YES
NO
Microsoft Basic
Slarsljrd
N A
N:A
S 99.011
Telephone Modem
SI 10, (K)
?iw.y5
S45H.00
$l54.'t5
StItJMCH t
t>Rl\'E ROAD
HAC
iII,F.t.ML*,Ml:S
FPOM or (KB
SP\C!£
*Mftiiufac(urer*SAU££eited retail priec Mar i. 1982
Read the chart and see why COMPUTE! Magazine' calls the VIC-20 computer
"an astounding machine for the price." Why BYTE- raves: "...the VIC-20
computer unit is unexcelled as a low-cost consumer computer." Why Popular
Mechanics ' says ". . . for the price of around S300. it's the only game in town that is
more than just a game." And why ON COMPUTING INC.-" exclaims: "What is
inside is an electronic marvel. . , if ii sounds as if I 'm in love with my new
possession. I am."
The wonder computer of the 1980s. The VIC-20 from Commodore, worlds
leading manufacturer of a full range of desktop computers. .See the VIC-20 at your
local Commodore dealer and selected department stores.
1 ApfilKlisjuc 2Ma)Hlissuc .' November 'HI issue 4 Katl'.fli.sue
Commodore ConsunuT P.'odtiels l)[\ lvi,iii
4K7 Devon Park Drive. Wayne. PA I91)K^
Canadian Residents: Commodore Compaler Svstems
.'.170 Pharmacy .Ave. . Agincourt.Om.. Canada. M1W 2K4
I'Icascscnd me more information on the VIC. 20,
CO:'--"'---
COMPUTER
I Addrcs-
( City _
. State_
— Zip_